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

serguei.spitsyn at oracle.com serguei.spitsyn at oracle.com
Tue Apr 28 04:27:46 UTC 2015


On 4/27/15 1:25 PM, serguei.spitsyn at oracle.com wrote:
> On 4/27/15 1:05 PM, serguei.spitsyn at oracle.com wrote:
>> Hi Coleen,
>>
>> Thank you for the review!
>>
>> On 4/27/15 10:49 AM, Coleen Phillimore wrote:
>>>
>>> Serguei,
>>>
>>> This looks nice.  I thought this change was going to delay calling 
>>> AdjustCpoolCacheAndVtable until the end of the redefinition, rather 
>>> than for each class, so was a bit confused by the change.
>>
>> I consider this for as a next round of optimizations which is more 
>> risky.
>> We need to decide when we are Ok to take this risk.
>> My guess is that it is better to do it together with the constant 
>> pool merge elimination.
>
> Sorry, I forgot to tell that my plan is to open another bug that should
> cover moving all this adjustments to the end of redefinition.
> This was a source of the confusion!

I've filed a separate bug report for the above:
   https://bugs.openjdk.java.net/browse/JDK-8078725


Thanks,
Serguei

>
> Thanks,
> Serguei
>
>>
>>>
>>> Your change is a nice cleanup and improves MethodHandle method 
>>> replacement performance.
>>
>> Thanks!
>>
>>>
>>> Your backport may not be simple for jdk8 because PreviousVersionNode 
>>> is another type and not an InstanceKlass. Maybe you've convinced me 
>>> that it's worth backporting those changes too.  Let me know.
>>
>> I've already backported the first chunk where this problem was hit.
>> It seems, this one should not be harder to backport.
>>
>> Thanks!
>> Serguei
>>
>>>
>>> Thanks,
>>> Coleen
>>>
>>> On 4/10/15, 4: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