I'm trying to debug Java deoptimization, but I can't get -XX:+TraceDeoptimization
to work. Do you know if it was disabled in OpenJDK 7, or maybe is not enabled in my version (7u9-2.3.4-0ubuntu1.12.04.1), or if there is some magic -XX:+unlockSomething
that I need to call?
No matter what I try, I always get the error message
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
without any further details when I add this parameter. Even a plain java -XX:+TraceDeoptimization
prints this message. It doesn't say it does not recognize the option, either. However, as PrintCompilation
reveals, I'm seeing a "made not entrant" messages, which apparently indicate a deoptimization, and I'd like to debug why this is happening, as I'm seeing an odd performance drop with supposedly improved code.
The default builds indeed do not include this functionality. You need a debug build. You can find some with Google on jdk7.java.net.
The default builds indeed do not include this functionality.
You need a debug build. You can find some with Google on jdk7.java.net.