RFR: 7200229: NPG: possible performance issue exposed by closed/runtime/6559877/Test6559877.java

Coleen Phillmore coleen.phillimore at oracle.com
Thu Nov 1 07:21:28 PDT 2012


This looks even better.   I like the name change and encapsulation!
Thanks Mikael.   Sorry for the delay.
Coleen

On 10/29/2012 12:20 PM, Mikael Gerdin wrote:
> Hi all,
>
> Based on some internal feedback:
> Here's a new version with "slow" instead of "paranoid"
> http://cr.openjdk.java.net/~mgerdin/7200229.2/
>
> /Mikael
>
> On 2012-10-25 15:07, Mikael Gerdin wrote:
>> Hi all,
>>
>> Here's an updated webrev which breaks out the check for verification
>> enabling to separate wrapper functions and replaces the use of #ifdef to
>> use a "const bool" instead.
>>
>> http://cr.openjdk.java.net/~mgerdin/7200229.1/
>>
>> Thanks
>> /Mikael
>>
>> On 2012-10-18 13:33, Mikael Gerdin wrote:
>>> Hi,
>>> In the Metaspace implementation that replaced perm gen for class meta
>>> data all allocations are made from "chunks". A ChunkManager is
>>> responsible for keeping track of all free chunks and currently there is
>>> a lot of verification of the free chunks by walking the linked lists
>>> that the free chunks are kept in.
>>> In a situation where we create a lot of class loaders we will force the
>>> ChunkManager to allocate a lot of small chunks, this increases the
>>> verification overhead in debug builds. This can cause tests to time out
>>> because the verification calls become very expensive with a lot of free
>>> chunks.
>>> We've never seen any of the free chunk verification asserts trigger 
>>> so I
>>> propose that we disable the over-zealous verification and just add a
>>> verification call to Universe::verify to make it possible to turn on
>>> verification if needed.
>>>
>>> Webrev: http://cr.openjdk.java.net/~mgerdin/7200229
>>> Buglink: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7200229
>>>
>>> Thanks
>>> /Mikael
>>>
>>
>


More information about the hotspot-runtime-dev mailing list