Reputation: 440
I have been profiling my java application with javaagent. but i find that JDK 7 tightened up the checks performed on stack map frames which can lead to VerifyError exceptions when the bytecode has been modified by tools unaware of these changes. we can use -XX:-UseSplitVerifier" switch to change the verifier back to JDK 6 version. but i find the execution time for the java application without javaagent is comparitively less than the same java application run by javaagent. Are there any other way to profile? JVMTI provides a better option but i'm not very good with native(c,c++) languages.
Upvotes: 0
Views: 728
Reputation: 4287
You can try jvisualvm which is included in the oracle jdk
(If you are using JDK version 6, update 7 or above)
but i find the execution time for the java application without javaagent is comparitively less than the same java application run by javaagent
Any profiler will have some amount of overhead (if it's doing something it has to be using the cpu and some memory itself)
Upvotes: 3