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

Mikael Gerdin mikael.gerdin at oracle.com
Mon Oct 29 09:20:03 PDT 2012


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
>>
>

-- 
Mikael Gerdin
Java SE VM SQE Stockholm


More information about the hotspot-runtime-dev mailing list