RFR(S): 8010738: G1: Output for full GCs with +PrintGCDetails should contain perm gen size/meta data change info

Poonam Bajaj poonam.bajaj at oracle.com
Wed May 8 01:32:07 UTC 2013

Hi John,

The fix and the Metaspace usage change output looks good.


On 5/7/2013 3:53 AM, John Cuthbertson wrote:
> Hi Everyone,
> Can I get a couple of volunteers review these fairly straight forward 
> changes? The webrev can be found at: 
> http://cr.openjdk.java.net/~johnc/8010738/webrev.0/.
> Summary:
> At sustaining engineering's request I've added the change information 
> about the metadata space to the detailed heap output for full GCs:
>> 4.896: [Full GC (Allocation Failure) 512M->343M(512M), 4.3640117 secs]
>>    [Eden: 0.0B(25.0M)->0.0B(97.0M) Survivors: 0.0B->0.0B Heap: 
>> 512.0M(512.0M)->343.3M(512.0M)], [Metaspace: 1611K->2433K(6448K)]
>>  [Times: user=5.13 sys=0.15, real=4.36 secs]
> The information that gets printed mirrors that of the other 
> collectors. Here's parallel GC:
>> 33.245: [Full GC (Ergonomics) [PSYoungGen: 133632K->3423K(144640K)] 
>> [ParOldGen: 348158K->348158K(348160K)] 481790K->351581K(492800K), 
>> [Metaspace: 1612K->2433K(6448K)], 2.5788089 secs] [Times: user=9.96 
>> sys=0.00, real=2.58 secs]
> The information that's printed is the amount of metaspace used before 
> the GC, the capacity, and the amount of reserved space.
> The changes should be straight forward when this is backported to hs24 
> - namely replacing the call to MetaspaceAux::print_metaspace_change() 
> to perm_gen()->print_heap_change().
> Most of the changes are the result of renaming some of the fields in 
> G1CollectorPolicy and the local variables in 
> G1CollectorPolicy::print_detailed_heap_transition().
> The included regression test just spawns a child java process to run a 
> very simple system GC test program with G1 and +PrintGCDetails. The 
> output of the spawned process is checked for "Metaspace".
> Thanks,
> JohnC

More information about the hotspot-gc-dev mailing list