1616 \
1617 product(bool, CMSOldPLABResizeQuicker, false, \
1618 "React on-the-fly during a scavenge to a sudden " \
1619 "change in block demand rate") \
1620 \
1621 product(uintx, CMSOldPLABToleranceFactor, 4, \
1622 "The tolerance of the phase-change detector for on-the-fly " \
1623 "PLAB resizing during a scavenge") \
1624 \
1625 product(uintx, CMSOldPLABReactivityFactor, 2, \
1626 "The gain in the feedback loop for on-the-fly PLAB resizing " \
1627 "during a scavenge") \
1628 \
1629 product(bool, AlwaysPreTouch, false, \
1630 "Force all freshly committed pages to be pre-touched") \
1631 \
1632 product_pd(uintx, CMSYoungGenPerWorker, \
1633 "The maximum size of young gen chosen by default per GC worker " \
1634 "thread available") \
1635 \
1636 product(bool, CMSIncrementalMode, false, \
1637 "Whether CMS GC should operate in \"incremental\" mode") \
1638 \
1639 product(uintx, CMSIncrementalDutyCycle, 10, \
1640 "Percentage (0-100) of CMS incremental mode duty cycle. If " \
1641 "CMSIncrementalPacing is enabled, then this is just the initial " \
1642 "value.") \
1643 \
1644 product(bool, CMSIncrementalPacing, true, \
1645 "Whether the CMS incremental mode duty cycle should be " \
1646 "automatically adjusted") \
1647 \
1648 product(uintx, CMSIncrementalDutyCycleMin, 0, \
1649 "Minimum percentage (0-100) of the CMS incremental duty cycle " \
1650 "used when CMSIncrementalPacing is enabled") \
1651 \
1652 product(uintx, CMSIncrementalSafetyFactor, 10, \
1653 "Percentage (0-100) used to add conservatism when computing the " \
1654 "duty cycle") \
1655 \
1656 product(uintx, CMSIncrementalOffset, 0, \
1657 "Percentage (0-100) by which the CMS incremental mode duty cycle "\
1658 "is shifted to the right within the period between young GCs") \
1659 \
1660 product(uintx, CMSExpAvgFactor, 50, \
1661 "Percentage (0-100) used to weight the current sample when " \
1662 "computing exponential averages for CMS statistics") \
1663 \
1664 product(uintx, CMS_FLSWeight, 75, \
1665 "Percentage (0-100) used to weight the current sample when " \
1666 "computing exponentially decaying averages for CMS FLS " \
1667 "statistics") \
1668 \
1669 product(uintx, CMS_FLSPadding, 1, \
1670 "The multiple of deviation from mean to use for buffering " \
1671 "against volatility in free list demand") \
1672 \
1673 product(uintx, FLSCoalescePolicy, 2, \
1674 "CMS: aggressiveness level for coalescing, increasing " \
1675 "from 0 to 4") \
1676 \
1677 product(bool, FLSAlwaysCoalesceLarge, false, \
1678 "CMS: larger free blocks are always available for coalescing") \
1679 \
1697 product(double, CMSLargeSplitSurplusPercent, 1.00, \
1698 "CMS: the factor by which to inflate estimated demand of large " \
1699 "block sizes to prevent splitting to supply demand for smaller " \
1700 "blocks") \
1701 \
1702 product(bool, CMSExtrapolateSweep, false, \
1703 "CMS: cushion for block demand during sweep") \
1704 \
1705 product(uintx, CMS_SweepWeight, 75, \
1706 "Percentage (0-100) used to weight the current sample when " \
1707 "computing exponentially decaying average for inter-sweep " \
1708 "duration") \
1709 \
1710 product(uintx, CMS_SweepPadding, 1, \
1711 "The multiple of deviation from mean to use for buffering " \
1712 "against volatility in inter-sweep duration") \
1713 \
1714 product(uintx, CMS_SweepTimerThresholdMillis, 10, \
1715 "Skip block flux-rate sampling for an epoch unless inter-sweep " \
1716 "duration exceeds this threshold in milliseconds") \
1717 \
1718 develop(bool, CMSTraceIncrementalMode, false, \
1719 "Trace CMS incremental mode") \
1720 \
1721 develop(bool, CMSTraceIncrementalPacing, false, \
1722 "Trace CMS incremental mode pacing computation") \
1723 \
1724 develop(bool, CMSTraceThreadState, false, \
1725 "Trace the CMS thread state (enable the trace_state() method)") \
1726 \
1727 product(bool, CMSClassUnloadingEnabled, true, \
1728 "Whether class unloading enabled when using CMS GC") \
1729 \
1730 product(uintx, CMSClassUnloadingMaxInterval, 0, \
1731 "When CMS class unloading is enabled, the maximum CMS cycle " \
1732 "count for which classes may not be unloaded") \
1733 \
1734 product(bool, CMSCompactWhenClearAllSoftRefs, true, \
1735 "Compact when asked to collect CMS gen with " \
1736 "clear_all_soft_refs()") \
1737 \
1738 product(bool, UseCMSCompactAtFullCollection, true, \
1739 "Use Mark-Sweep-Compact algorithm at full collections") \
1740 \
1741 product(uintx, CMSFullGCsBeforeCompaction, 0, \
1742 "Number of CMS full collection done before compaction if > 0") \
|
1616 \
1617 product(bool, CMSOldPLABResizeQuicker, false, \
1618 "React on-the-fly during a scavenge to a sudden " \
1619 "change in block demand rate") \
1620 \
1621 product(uintx, CMSOldPLABToleranceFactor, 4, \
1622 "The tolerance of the phase-change detector for on-the-fly " \
1623 "PLAB resizing during a scavenge") \
1624 \
1625 product(uintx, CMSOldPLABReactivityFactor, 2, \
1626 "The gain in the feedback loop for on-the-fly PLAB resizing " \
1627 "during a scavenge") \
1628 \
1629 product(bool, AlwaysPreTouch, false, \
1630 "Force all freshly committed pages to be pre-touched") \
1631 \
1632 product_pd(uintx, CMSYoungGenPerWorker, \
1633 "The maximum size of young gen chosen by default per GC worker " \
1634 "thread available") \
1635 \
1636 product(uintx, CMSIncrementalSafetyFactor, 10, \
1637 "Percentage (0-100) used to add conservatism when computing the " \
1638 "duty cycle") \
1639 \
1640 product(uintx, CMSExpAvgFactor, 50, \
1641 "Percentage (0-100) used to weight the current sample when " \
1642 "computing exponential averages for CMS statistics") \
1643 \
1644 product(uintx, CMS_FLSWeight, 75, \
1645 "Percentage (0-100) used to weight the current sample when " \
1646 "computing exponentially decaying averages for CMS FLS " \
1647 "statistics") \
1648 \
1649 product(uintx, CMS_FLSPadding, 1, \
1650 "The multiple of deviation from mean to use for buffering " \
1651 "against volatility in free list demand") \
1652 \
1653 product(uintx, FLSCoalescePolicy, 2, \
1654 "CMS: aggressiveness level for coalescing, increasing " \
1655 "from 0 to 4") \
1656 \
1657 product(bool, FLSAlwaysCoalesceLarge, false, \
1658 "CMS: larger free blocks are always available for coalescing") \
1659 \
1677 product(double, CMSLargeSplitSurplusPercent, 1.00, \
1678 "CMS: the factor by which to inflate estimated demand of large " \
1679 "block sizes to prevent splitting to supply demand for smaller " \
1680 "blocks") \
1681 \
1682 product(bool, CMSExtrapolateSweep, false, \
1683 "CMS: cushion for block demand during sweep") \
1684 \
1685 product(uintx, CMS_SweepWeight, 75, \
1686 "Percentage (0-100) used to weight the current sample when " \
1687 "computing exponentially decaying average for inter-sweep " \
1688 "duration") \
1689 \
1690 product(uintx, CMS_SweepPadding, 1, \
1691 "The multiple of deviation from mean to use for buffering " \
1692 "against volatility in inter-sweep duration") \
1693 \
1694 product(uintx, CMS_SweepTimerThresholdMillis, 10, \
1695 "Skip block flux-rate sampling for an epoch unless inter-sweep " \
1696 "duration exceeds this threshold in milliseconds") \
1697 \
1698 develop(bool, CMSTraceThreadState, false, \
1699 "Trace the CMS thread state (enable the trace_state() method)") \
1700 \
1701 product(bool, CMSClassUnloadingEnabled, true, \
1702 "Whether class unloading enabled when using CMS GC") \
1703 \
1704 product(uintx, CMSClassUnloadingMaxInterval, 0, \
1705 "When CMS class unloading is enabled, the maximum CMS cycle " \
1706 "count for which classes may not be unloaded") \
1707 \
1708 product(bool, CMSCompactWhenClearAllSoftRefs, true, \
1709 "Compact when asked to collect CMS gen with " \
1710 "clear_all_soft_refs()") \
1711 \
1712 product(bool, UseCMSCompactAtFullCollection, true, \
1713 "Use Mark-Sweep-Compact algorithm at full collections") \
1714 \
1715 product(uintx, CMSFullGCsBeforeCompaction, 0, \
1716 "Number of CMS full collection done before compaction if > 0") \
|