Free ratio based heap shrinking in the parallel collector
yamauchi at google.com
Thu Mar 11 15:09:15 PST 2010
On Wed, Mar 10, 2010 at 11:10 PM, Jon Masamitsu <Jon.Masamitsu at sun.com>wrote:
> On Mar 10, 2010, at 4:04 PM, Jon Masamitsu wrote:
>> Have you signed a contributor agreement? The gentleman
>> who used to take care of those isn't in the group any longer
>> and I'll have to go hunt it down before I look at the
> I got confirmation that you're eligible to contribute.
>> I'm going to be out of the office doing a
>> presentation tomorrow so won't be able to pursue
>> this until Friday at the earliest.
>> But just in general when UseAdativeSizePolicy is
>> off the UseParallelGC collector doesn't do any resizing.
>> Can you just make this the sizing policy when
>> UseAdativeSizePolicy is off (instead of adding the
>> new flags)?
> Sorry, I misread your mail. I can see the reason for the
> new flags. I'll take a look at the patch in the next
> couple of days.
>> On 03/10/10 15:17, Hiroshi Yamauchi wrote:
>>> I'd like to have this patch
>>> contributed, if appropriate.
>>> It implements a simple heap shrinking logic based on the free ratio
>>> (MaxHeapFreeRatio) in the parallel collector. The way it works is the
>>> following: If the free ratio, (1.0 - <used> / <capacity>) * 100 >
>>> MaxHeapFreeRatio, this logic kicks in. Otherwise, the (default) adaptive
>>> size policy runs the show (as before). This feature is turned off by
>>> default. There are two new flags to turn it on:
>>> UseFreeRatioForParallelGC - this enables it.
>>> UseFreeRatioOnlyInSystemGCForParallelGC - this enables it only in
>>> explicit System.gc() calls. This is more useful in apps that call
>>> System.gc() when it's idle and don't want shrinking to happen at all other
>>> In our tests, it appears to work well in a simple test and to help a real
>>> app reduce its footprint (RSS) when it's idle.
>>> Thanks to Chuck Rasbold who uploaded the webrev on my behalf.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the hotspot-gc-dev