RFR (S) 8073705: more performance issues in class redefinition (original) (raw)

serguei.spitsyn at oracle.com serguei.spitsyn at oracle.com
Fri Apr 17 20:04:54 UTC 2015


On 4/16/15 10:01 AM, Daniel D. Daugherty wrote:

> http://cr.openjdk.java.net/~sspitsyn/webrevs/2015/hotspot/8073705-JVMTI-redefscale2.1/

src/share/vm/classfile/javaClasses.hpp No comments. src/share/vm/classfile/javaClasses.cpp No comments. src/share/vm/oops/cpCache.hpp No comments. src/share/vm/oops/cpCache.cpp No comments. src/share/vm/prims/methodHandles.hpp No comments. src/share/vm/prims/methodHandles.cpp Now we get to the meat of the change. :-) Instead of the double iteration loop in the old code, you are now taking advantage of the recent 'origmethodidnum()' work. So you are not only reducing the iteration count, you are also reducing the number of adjustment calls that need to be made. Cool.

Thanks!

src/share/vm/prims/jvmtiRedefineClasses.cpp No comments.

Thumbs up.

Thanks for the review!

Do you happen to have any info on perf improvements for this fix? No big deal if you don't.

I do not have any info on perf improvements for this fix. The plan is to ask EM team to check if they still have any scalability issues after both fixes and see what are the improvements. They report that class retransformations in the EM take tens of minutes.

Thanks, Serguei

Dan

On 4/10/15 2:29 PM, serguei.spitsyn at oracle.com wrote: Hi Coleen and Dan,

This is the second class redefinition scalability/optimization fix that is in my queue to push into 9 and 8u60. The approach is similar to the first one but much smaller. For convenience, these are the links to the first scalability fix: Bug report: https://bugs.openjdk.java.net/browse/JDK-8073705 Open webrev: http://cr.openjdk.java.net/~sspitsyn/webrevs/2015/hotspot/8046246-JVMTI-redefscale.2/ Please, let me know if you have any chance to review this. This is the last one that is waiting for your attention! :) Thanks, Serguei On 3/26/15 7:38 PM, serguei.spitsyn at oracle.com wrote: Please, review the fix for: https://bugs.openjdk.java.net/browse/JDK-8073705

Open hotspot webrev: http://cr.openjdk.java.net/~sspitsyn/webrevs/2015/hotspot/8073705-JVMTI-redefscale2.1/

Summary: This is the 2-nd round of performance/calability fixes in class redefinition. This time, the two remaining issues that were left alone in the first round fix: - optimized ConstantPoolCache::adjustmethodentries() is used for previous versions - the MemberNameTable::adjustmethodentries() has been optimized too - some cleanup Testing: In progress: nsk redefine classes tests, JTREG java/lang/instrument, com/sun/jdi Thanks, Serguei



More information about the hotspot-dev mailing list