Java 8 TieredCompilation Blacklist?

Wolfgang Pedot wolfgang.pedot at
Tue Apr 14 10:00:56 UTC 2015


I have recently migrated a big-ish application from 7u40 to 8u40 and I 
noticed a quite substantial increase in CPU utilisation.
After doing some research I figured out that the cause of that is 
TieredCompilation which is now on by default, I have deactivated that 
feature and now CPU utilisation is back to normal.
I tested TieredCompilation before on 7u<something> and also had an 
increase in CPU up to the point where the application actually slowed 
down so I ended that test.
A part of the application uses BIRT and that tends to generate a lot of 
short-lived classes to optimize Javascript-code, my guess is that the 
tiered compiler compiles those classes in an attempt to optimize them and
depending on the usage of the system that increases CPU without really 
accelerating anything (according to statistics). I have found 
"CompileOnly" which seems to be something to be used for test and 
development, is there something like a Blacklist I can use to tell the 
compiler NOT to compile classes in a specific package?

The system had been running for ~13h on 8u40 and used 1.5h of CPU-time 
for compilation, the previous version running on 7u40 had been up for 
~62.5days and only used 36min for compilation. I did notice the much 
quicker warmup in the response-times after the switch to 8u40 but I dont 
want the system to spend so much time compiling stuff that does not 
really improve performance.

any help would be appreciated


More information about the hotspot-compiler-dev mailing list