This sounds like it may be related to an issue that was reported a while
ago. I don't recall the exact details but there was some massive array
being allocated if I recall correctly. The fix was to add a guard to the
logging calls in the AWT code. But in this case if logging is being used
then you will hit this overhead.
Sorry I don't recall enough details to find an exact reference. Skimming
a number of mailing list archives hasn't turned it up either.
David
On 16/04/2012 11:18 PM, Daniel D. Daugherty wrote:
java.util.logging is currently handled by the Serviceability Team.
Adding that alias to this e-mail thread...
Dan
On 4/16/12 12:17 AM, Nicolas Carranza wrote:
Moving the mouse pointer over a java.awt.Window using JRE7 consumes
aprox. twice the CPU time as with JRE6 when logging is used (when a call
to java.util.logging.getLogger(String)---even without using the returned
Logger--- has been done). Keyboard key event processing suffers the same
performance penalty. For steps to reproduce this problem please look at:
http://www.java.net/forum/topic/performance/general-performance-discussion/jre7s-javaawt-performance-degradation-caused-javautillogging-linux
.
The performance degradation seems to be "enabled" by the call of
sun.util.logging.PlatformLogger.redirectPlatformLoggers() done inside
java.util.LogManager.readPrimorialConfiguration() on JRE7. Call chain:
Logger.getLogger()->LogManager.getLogManager()->
LogManager.readPrimordialConfiguration()->sun.util.logging.PlatformLogger.redirectPlatformLoggers().
This call is not made on JRE6. If this problem is not easy to solve then
I guess is better to remove this call from JRE7's
readPrimordialConfiguration as it does more harm than good.
Please let me know if there is a better place to report this problem. A
couple of weeks ago I "opened" a bug report on bugs.sun.com but I
received no response at all.
Cheers,
Nicolas