281 experimental(uintx, ShenandoahFullGCThreshold, 3, \
282 "How many back-to-back Degenerated GCs to do before triggering " \
283 "a Full GC.") \
284 \
285 experimental(bool, ShenandoahImplicitGCInvokesConcurrent, false, \
286 "Should internally-caused GCs invoke concurrent cycles, or go to" \
287 "stop-the-world (degenerated/full)?") \
288 \
289 diagnostic(bool, ShenandoahHumongousMoves, true, \
290 "Allow moving humongous regions. This makes GC more resistant " \
291 "to external fragmentation that may otherwise fail other " \
292 "humongous allocations, at the expense of higher GC copying " \
293 "costs. Currently affects stop-the-world (full) cycle only.") \
294 \
295 diagnostic(bool, ShenandoahOOMDuringEvacALot, false, \
296 "Simulate OOM during evacuation frequently.") \
297 \
298 diagnostic(bool, ShenandoahAllocFailureALot, false, \
299 "Make lots of artificial allocation failures.") \
300 \
301 diagnostic(bool, ShenandoahTerminationTrace, false, \
302 "Tracing task termination timings") \
303 \
304 diagnostic(bool, ShenandoahAlwaysPreTouch, false, \
305 "Pre-touch heap memory, overrides global AlwaysPreTouch") \
306 \
307 experimental(intx, ShenandoahMarkScanPrefetch, 32, \
308 "How many objects to prefetch ahead when traversing mark bitmaps."\
309 "Set to 0 to disable prefetching.") \
310 range(0, 256) \
311 \
312 experimental(uintx, ShenandoahMarkLoopStride, 1000, \
313 "How many items are processed during one marking step") \
314 \
315 experimental(uintx, ShenandoahParallelRegionStride, 1024, \
316 "How many regions are processed in one stride during parallel " \
317 "iteration.") \
318 \
319 experimental(size_t, ShenandoahSATBBufferSize, 1 * K, \
320 "Number of entries in an SATB log buffer.") \
321 range(1, max_uintx) \
322 \
323 experimental(uintx, ShenandoahSATBBufferFlushInterval, 100, \
|
281 experimental(uintx, ShenandoahFullGCThreshold, 3, \
282 "How many back-to-back Degenerated GCs to do before triggering " \
283 "a Full GC.") \
284 \
285 experimental(bool, ShenandoahImplicitGCInvokesConcurrent, false, \
286 "Should internally-caused GCs invoke concurrent cycles, or go to" \
287 "stop-the-world (degenerated/full)?") \
288 \
289 diagnostic(bool, ShenandoahHumongousMoves, true, \
290 "Allow moving humongous regions. This makes GC more resistant " \
291 "to external fragmentation that may otherwise fail other " \
292 "humongous allocations, at the expense of higher GC copying " \
293 "costs. Currently affects stop-the-world (full) cycle only.") \
294 \
295 diagnostic(bool, ShenandoahOOMDuringEvacALot, false, \
296 "Simulate OOM during evacuation frequently.") \
297 \
298 diagnostic(bool, ShenandoahAllocFailureALot, false, \
299 "Make lots of artificial allocation failures.") \
300 \
301 diagnostic(bool, ShenandoahAlwaysPreTouch, false, \
302 "Pre-touch heap memory, overrides global AlwaysPreTouch") \
303 \
304 experimental(intx, ShenandoahMarkScanPrefetch, 32, \
305 "How many objects to prefetch ahead when traversing mark bitmaps."\
306 "Set to 0 to disable prefetching.") \
307 range(0, 256) \
308 \
309 experimental(uintx, ShenandoahMarkLoopStride, 1000, \
310 "How many items are processed during one marking step") \
311 \
312 experimental(uintx, ShenandoahParallelRegionStride, 1024, \
313 "How many regions are processed in one stride during parallel " \
314 "iteration.") \
315 \
316 experimental(size_t, ShenandoahSATBBufferSize, 1 * K, \
317 "Number of entries in an SATB log buffer.") \
318 range(1, max_uintx) \
319 \
320 experimental(uintx, ShenandoahSATBBufferFlushInterval, 100, \
|