305 "Set to 0 to disable prefetching.") \
306 range(0, 256) \
307 \
308 experimental(uintx, ShenandoahMarkLoopStride, 1000, \
309 "How many items to process during one marking iteration before " \
310 "checking for cancellation, yielding, etc. Larger values improve "\
311 "marking performance at expense of responsiveness.") \
312 \
313 experimental(uintx, ShenandoahParallelRegionStride, 1024, \
314 "How many regions to process at once during parallel region " \
315 "iteration. Affects heaps with lots of regions.") \
316 \
317 experimental(size_t, ShenandoahSATBBufferSize, 1 * K, \
318 "Number of entries in an SATB log buffer.") \
319 range(1, max_uintx) \
320 \
321 experimental(uintx, ShenandoahSATBBufferFlushInterval, 100, \
322 "Forcefully flush non-empty SATB buffers at this interval. " \
323 "Time is in milliseconds.") \
324 \
325 diagnostic(bool, ShenandoahPreclean, true, \
326 "Do concurrent preclean phase before final mark: process " \
327 "definitely alive references to avoid dealing with them during " \
328 "pause.") \
329 \
330 experimental(bool, ShenandoahSuspendibleWorkers, false, \
331 "Suspend concurrent GC worker threads at safepoints") \
332 \
333 diagnostic(bool, ShenandoahSATBBarrier, true, \
334 "Turn on/off SATB barriers in Shenandoah") \
335 \
336 diagnostic(bool, ShenandoahStoreValEnqueueBarrier, false, \
337 "Turn on/off enqueuing of oops for storeval barriers") \
338 \
339 diagnostic(bool, ShenandoahCASBarrier, true, \
340 "Turn on/off CAS barriers in Shenandoah") \
341 \
342 diagnostic(bool, ShenandoahCloneBarrier, true, \
343 "Turn on/off clone barriers in Shenandoah") \
344 \
|
305 "Set to 0 to disable prefetching.") \
306 range(0, 256) \
307 \
308 experimental(uintx, ShenandoahMarkLoopStride, 1000, \
309 "How many items to process during one marking iteration before " \
310 "checking for cancellation, yielding, etc. Larger values improve "\
311 "marking performance at expense of responsiveness.") \
312 \
313 experimental(uintx, ShenandoahParallelRegionStride, 1024, \
314 "How many regions to process at once during parallel region " \
315 "iteration. Affects heaps with lots of regions.") \
316 \
317 experimental(size_t, ShenandoahSATBBufferSize, 1 * K, \
318 "Number of entries in an SATB log buffer.") \
319 range(1, max_uintx) \
320 \
321 experimental(uintx, ShenandoahSATBBufferFlushInterval, 100, \
322 "Forcefully flush non-empty SATB buffers at this interval. " \
323 "Time is in milliseconds.") \
324 \
325 experimental(uintx, ShenandoahEvacLockGranularity, 0, \
326 "How coarse to make evac-locking. Default 0 means " \
327 "per-HeapWord-locking, higher value make locking coarser " \
328 "in 2-exponent steps, e.g. one lock per 2^N heap words.") \
329 \
330 diagnostic(bool, ShenandoahPreclean, true, \
331 "Do concurrent preclean phase before final mark: process " \
332 "definitely alive references to avoid dealing with them during " \
333 "pause.") \
334 \
335 experimental(bool, ShenandoahSuspendibleWorkers, false, \
336 "Suspend concurrent GC worker threads at safepoints") \
337 \
338 diagnostic(bool, ShenandoahSATBBarrier, true, \
339 "Turn on/off SATB barriers in Shenandoah") \
340 \
341 diagnostic(bool, ShenandoahStoreValEnqueueBarrier, false, \
342 "Turn on/off enqueuing of oops for storeval barriers") \
343 \
344 diagnostic(bool, ShenandoahCASBarrier, true, \
345 "Turn on/off CAS barriers in Shenandoah") \
346 \
347 diagnostic(bool, ShenandoahCloneBarrier, true, \
348 "Turn on/off clone barriers in Shenandoah") \
349 \
|