Java 8 TieredCompilation Blacklist?
wolfgang.pedot at finkzeit.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
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