1302 product(uintx, CMS_SweepPadding, 2, \ 1303 "The multiple of deviation from mean to use for buffering" \ 1304 "against volatility in inter-sweep duration.") \ 1305 \ 1306 product(uintx, CMS_SweepTimerThresholdMillis, 10, \ 1307 "Skip block flux-rate sampling for an epoch unless inter-sweep " \ 1308 " duration exceeds this threhold in milliseconds") \ 1309 \ 1310 develop(bool, CMSTraceIncrementalMode, false, \ 1311 "Trace CMS incremental mode") \ 1312 \ 1313 develop(bool, CMSTraceIncrementalPacing, false, \ 1314 "Trace CMS incremental mode pacing computation") \ 1315 \ 1316 develop(bool, CMSTraceThreadState, false, \ 1317 "Trace the CMS thread state (enable the trace_state() method)") \ 1318 \ 1319 product(bool, CMSClassUnloadingEnabled, false, \ 1320 "Whether class unloading enabled when using CMS GC") \ 1321 \ 1322 product(bool, CMSCompactWhenClearAllSoftRefs, true, \ 1323 "Compact when asked to collect CMS gen with clear_all_soft_refs") \ 1324 \ 1325 product(bool, UseCMSCompactAtFullCollection, true, \ 1326 "Use mark sweep compact at full collections") \ 1327 \ 1328 product(uintx, CMSFullGCsBeforeCompaction, 0, \ 1329 "Number of CMS full collection done before compaction if > 0") \ 1330 \ 1331 develop(intx, CMSDictionaryChoice, 0, \ 1332 "Use BinaryTreeDictionary as default in the CMS generation") \ 1333 \ 1334 product(uintx, CMSIndexedFreeListReplenish, 4, \ 1335 "Replenish and indexed free list with this number of chunks") \ 1336 \ 1337 product(bool, CMSLoopWarn, false, \ 1338 "Warn in case of excessive CMS looping") \ 1339 \ 1340 develop(bool, CMSOverflowEarlyRestoration, false, \ 1341 "Whether preserved marks should be restored early") \ 1487 product(bool, BlockOffsetArrayUseUnallocatedBlock, trueInDebug, \ 1488 "Maintain _unallocated_block in BlockOffsetArray" \ 1489 " (currently applicable only to CMS collector)") \ 1490 \ 1491 develop(bool, TraceCMSState, false, \ 1492 "Trace the state of the CMS collection") \ 1493 \ 1494 product(intx, RefDiscoveryPolicy, 0, \ 1495 "Whether reference-based(0) or referent-based(1)") \ 1496 \ 1497 product(bool, ParallelRefProcEnabled, false, \ 1498 "Enable parallel reference processing whenever possible") \ 1499 \ 1500 product(bool, ParallelRefProcBalancingEnabled, true, \ 1501 "Enable balancing of reference processing queues") \ 1502 \ 1503 product(intx, CMSTriggerRatio, 80, \ 1504 "Percentage of MinHeapFreeRatio in CMS generation that is " \ 1505 " allocated before a CMS collection cycle commences") \ 1506 \ 1507 product(intx, CMSBootstrapOccupancy, 50, \ 1508 "Percentage CMS generation occupancy at which to " \ 1509 " initiate CMS collection for bootstrapping collection stats") \ 1510 \ 1511 product(intx, CMSInitiatingOccupancyFraction, -1, \ 1512 "Percentage CMS generation occupancy to start a CMS collection " \ 1513 " cycle (A negative value means that CMSTirggerRatio is used)") \ 1514 \ 1515 product(bool, UseCMSInitiatingOccupancyOnly, false, \ 1516 "Only use occupancy as a crierion for starting a CMS collection") \ 1517 \ 1518 develop(bool, CMSTestInFreeList, false, \ 1519 "Check if the coalesced range is already in the " \ 1520 "free lists as claimed.") \ 1521 \ 1522 notproduct(bool, CMSVerifyReturnedBytes, false, \ 1523 "Check that all the garbage collected was returned to the " \ 1524 "free lists.") \ 1525 \ 1526 notproduct(bool, ScavengeALot, false, \ 1527 "Force scavenge at every Nth exit from the runtime system " \ 1528 "(N=ScavengeALotInterval)") \ 1529 \ 1530 develop(bool, FullGCALot, false, \ 1531 "Force full gc at every Nth exit from the runtime system " \ 1532 "(N=FullGCALotInterval)") \ 1533 \ 1534 notproduct(bool, GCALotAtAllSafepoints, false, \ | 1302 product(uintx, CMS_SweepPadding, 2, \ 1303 "The multiple of deviation from mean to use for buffering" \ 1304 "against volatility in inter-sweep duration.") \ 1305 \ 1306 product(uintx, CMS_SweepTimerThresholdMillis, 10, \ 1307 "Skip block flux-rate sampling for an epoch unless inter-sweep " \ 1308 " duration exceeds this threhold in milliseconds") \ 1309 \ 1310 develop(bool, CMSTraceIncrementalMode, false, \ 1311 "Trace CMS incremental mode") \ 1312 \ 1313 develop(bool, CMSTraceIncrementalPacing, false, \ 1314 "Trace CMS incremental mode pacing computation") \ 1315 \ 1316 develop(bool, CMSTraceThreadState, false, \ 1317 "Trace the CMS thread state (enable the trace_state() method)") \ 1318 \ 1319 product(bool, CMSClassUnloadingEnabled, false, \ 1320 "Whether class unloading enabled when using CMS GC") \ 1321 \ 1322 product(uintx, CMSClassUnloadingMaxInterval, 0, \ 1323 "When CMS class unloading is enabled, the maximum CMS cycle count"\ 1324 " for which classes may not be unloaded") \ 1325 \ 1326 product(bool, CMSCompactWhenClearAllSoftRefs, true, \ 1327 "Compact when asked to collect CMS gen with clear_all_soft_refs") \ 1328 \ 1329 product(bool, UseCMSCompactAtFullCollection, true, \ 1330 "Use mark sweep compact at full collections") \ 1331 \ 1332 product(uintx, CMSFullGCsBeforeCompaction, 0, \ 1333 "Number of CMS full collection done before compaction if > 0") \ 1334 \ 1335 develop(intx, CMSDictionaryChoice, 0, \ 1336 "Use BinaryTreeDictionary as default in the CMS generation") \ 1337 \ 1338 product(uintx, CMSIndexedFreeListReplenish, 4, \ 1339 "Replenish and indexed free list with this number of chunks") \ 1340 \ 1341 product(bool, CMSLoopWarn, false, \ 1342 "Warn in case of excessive CMS looping") \ 1343 \ 1344 develop(bool, CMSOverflowEarlyRestoration, false, \ 1345 "Whether preserved marks should be restored early") \ 1491 product(bool, BlockOffsetArrayUseUnallocatedBlock, trueInDebug, \ 1492 "Maintain _unallocated_block in BlockOffsetArray" \ 1493 " (currently applicable only to CMS collector)") \ 1494 \ 1495 develop(bool, TraceCMSState, false, \ 1496 "Trace the state of the CMS collection") \ 1497 \ 1498 product(intx, RefDiscoveryPolicy, 0, \ 1499 "Whether reference-based(0) or referent-based(1)") \ 1500 \ 1501 product(bool, ParallelRefProcEnabled, false, \ 1502 "Enable parallel reference processing whenever possible") \ 1503 \ 1504 product(bool, ParallelRefProcBalancingEnabled, true, \ 1505 "Enable balancing of reference processing queues") \ 1506 \ 1507 product(intx, CMSTriggerRatio, 80, \ 1508 "Percentage of MinHeapFreeRatio in CMS generation that is " \ 1509 " allocated before a CMS collection cycle commences") \ 1510 \ 1511 product(intx, CMSTriggerPermRatio, 80, \ 1512 "Percentage of MinHeapFreeRatio in the CMS perm generation that" \ 1513 " is allocated before a CMS collection cycle commences, that " \ 1514 " also collects the perm generation") \ 1515 \ 1516 product(uintx, CMSBootstrapOccupancy, 50, \ 1517 "Percentage CMS generation occupancy at which to " \ 1518 " initiate CMS collection for bootstrapping collection stats") \ 1519 \ 1520 product(intx, CMSInitiatingOccupancyFraction, -1, \ 1521 "Percentage CMS generation occupancy to start a CMS collection " \ 1522 " cycle (A negative value means that CMSTriggerRatio is used)") \ 1523 \ 1524 product(intx, CMSInitiatingPermOccupancyFraction, -1, \ 1525 "Percentage CMS perm generation occupancy to start a CMScollection"\ 1526 " cycle (A negative value means that CMSTriggerPermRatio is used)")\ 1527 \ 1528 product(bool, UseCMSInitiatingOccupancyOnly, false, \ 1529 "Only use occupancy as a crierion for starting a CMS collection") \ 1530 \ 1531 develop(bool, CMSTestInFreeList, false, \ 1532 "Check if the coalesced range is already in the " \ 1533 "free lists as claimed.") \ 1534 \ 1535 notproduct(bool, CMSVerifyReturnedBytes, false, \ 1536 "Check that all the garbage collected was returned to the " \ 1537 "free lists.") \ 1538 \ 1539 notproduct(bool, ScavengeALot, false, \ 1540 "Force scavenge at every Nth exit from the runtime system " \ 1541 "(N=ScavengeALotInterval)") \ 1542 \ 1543 develop(bool, FullGCALot, false, \ 1544 "Force full gc at every Nth exit from the runtime system " \ 1545 "(N=FullGCALotInterval)") \ 1546 \ 1547 notproduct(bool, GCALotAtAllSafepoints, false, \ |