comparison src/share/vm/runtime/globals.hpp @ 1887:cd3ef3fd20dd

6992998: CMSWaitDuration=0 causes hangs with +ExplicitGCInvokesConcurrent Summary: Closed a timing hole during which concurrent full gc requests can be missed. The hole can increase the latency of the response to a full gc request by up to the value of CMSWaitDuration. If CMSWaitDuration=0 is, as currently, interpreted as an unbounded wait, suitable in certain tuning scenarios, the application can potentially hang. Made two obscure tunables, including CMSWaitDuration, manageable. Reviewed-by: jcoomes, tonyp
author ysr
date Thu, 21 Oct 2010 17:29:24 -0700
parents 0715f0cf171d
children a7214d79fcf1
comparison
equal deleted inserted replaced
1886:72a161e62cc4 1887:cd3ef3fd20dd
1583 \ 1583 \
1584 product(uintx, CMSAbortablePrecleanMinWorkPerIteration, 100, \ 1584 product(uintx, CMSAbortablePrecleanMinWorkPerIteration, 100, \
1585 "(Temporary, subject to experimentation)" \ 1585 "(Temporary, subject to experimentation)" \
1586 "Nominal minimum work per abortable preclean iteration") \ 1586 "Nominal minimum work per abortable preclean iteration") \
1587 \ 1587 \
1588 product(intx, CMSAbortablePrecleanWaitMillis, 100, \ 1588 manageable(intx, CMSAbortablePrecleanWaitMillis, 100, \
1589 "(Temporary, subject to experimentation)" \ 1589 "(Temporary, subject to experimentation)" \
1590 " Time that we sleep between iterations when not given" \ 1590 " Time that we sleep between iterations when not given" \
1591 " enough work per iteration") \ 1591 " enough work per iteration") \
1592 \ 1592 \
1593 product(uintx, CMSRescanMultiple, 32, \ 1593 product(uintx, CMSRescanMultiple, 32, \
1675 "Trace some actions of the CMS sweeper") \ 1675 "Trace some actions of the CMS sweeper") \
1676 \ 1676 \
1677 product(uintx, CMSWorkQueueDrainThreshold, 10, \ 1677 product(uintx, CMSWorkQueueDrainThreshold, 10, \
1678 "Don't drain below this size per parallel worker/thief") \ 1678 "Don't drain below this size per parallel worker/thief") \
1679 \ 1679 \
1680 product(intx, CMSWaitDuration, 2000, \ 1680 manageable(intx, CMSWaitDuration, 2000, \
1681 "Time in milliseconds that CMS thread waits for young GC") \ 1681 "Time in milliseconds that CMS thread waits for young GC") \
1682 \ 1682 \
1683 product(bool, CMSYield, true, \ 1683 product(bool, CMSYield, true, \
1684 "Yield between steps of concurrent mark & sweep") \ 1684 "Yield between steps of concurrent mark & sweep") \
1685 \ 1685 \