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

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 'orig_method_idnum()'
>     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::adjust_method_entries() is used 
>>> for previous versions
>>>      - the MemberNameTable::adjust_method_entries() 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