PermGen occupancy triggering CMS?
Bernd Eckenfels
bernd.eckenfels at googlemail.com
Tue Oct 2 21:26:31 PDT 2012
Am 28.09.2012, 20:39 Uhr, schrieb Bernd Eckenfels
<bernd.eckenfels at googlemail.com>:
> So this seems like 80% should trigger
It works like this:
src\share\vm\gc_implementation\concurrentMarkSweep\concurrentMarkSweepGeneration.cpp:276
ConcurrentMarkSweepGeneration::init_initiating_occupancy:
if CMSInitiatingPermOccupancyFraction >= 0 then this ratio is used,
otherwise it uses _initiating_occupancy = (100% - MinHeapFreeRatio%) +
(CMSTriggerPermRatio% *
MinHeapFreeRatio%)
(Not sure if it makes sense to actually consider MinHeapFreeRatio for
PermGen, but anyway...
This will result (with the default CMSTriggerPermRatio=80 and
MinHeapFreeRatio=40) in 92% occupancy trigger.
I can see that also in the logs:
CMSCollector shouldConcurrentCollect: 8.147
time_until_cms_gen_full 12.9501194
free=2640592
contiguous_available=1427177472
promotion_rate=159296
cms_allocation_rate=0
occupancy=0.5314856
initiatingOccupancy=0.9200000
_initiatingPermOccupancy=0.9200000_
Bernd
More information about the hotspot-gc-use
mailing list