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

Mikael Gerdin mikael.gerdin at oracle.com
Thu Oct 25 13:07:44 UTC 2012


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-gc-dev mailing list