59 "(0 means do not periodically generate this info); " \ 60 "it also requires that logging is enabled on the trace" \ 61 "level for gc+remset") \ 62 range(0, max_intx) \ 63 \ 64 product(double, G1ConcMarkStepDurationMillis, 10.0, \ 65 "Target duration of individual concurrent marking steps " \ 66 "in milliseconds.") \ 67 range(1.0, DBL_MAX) \ 68 \ 69 product(intx, G1RefProcDrainInterval, 10, \ 70 "The number of discovered reference objects to process before " \ 71 "draining concurrent marking work queues.") \ 72 range(1, max_intx) \ 73 \ 74 experimental(double, G1LastPLABAverageOccupancy, 50.0, \ 75 "The expected average occupancy of the last PLAB in " \ 76 "percent.") \ 77 range(0.001, 100.0) \ 78 \ 79 product(size_t, G1SATBBufferSize, 1*K, \ 80 "Number of entries in an SATB log buffer.") \ 81 range(1, max_uintx) \ 82 \ 83 develop(intx, G1SATBProcessCompletedThreshold, 20, \ 84 "Number of completed buffers that triggers log processing.") \ 85 range(0, max_jint) \ 86 \ 87 product(uintx, G1SATBBufferEnqueueingThresholdPercent, 60, \ 88 "Before enqueueing them, each mutator thread tries to do some " \ 89 "filtering on the SATB buffers it generates. If post-filtering " \ 90 "the percentage of retained entries is over this threshold " \ 91 "the buffer will be enqueued for processing. A value of 0 " \ 92 "specifies that mutator threads should not do such filtering.") \ 93 range(0, 100) \ 94 \ 95 experimental(intx, G1ExpandByPercentOfAvailable, 20, \ 96 "When expanding, % of uncommitted space to claim.") \ 97 range(0, 100) \ 98 \ 99 develop(bool, G1RSBarrierRegionFilter, true, \ 100 "If true, generate region filtering code in RS barrier") \ 101 \ 102 product(size_t, G1UpdateBufferSize, 256, \ 103 "Size of an update buffer") \ 104 range(1, NOT_LP64(32*M) LP64_ONLY(1*G)) \ 105 \ 106 product(size_t, G1ConcRefinementYellowZone, 0, \ 107 "Number of enqueued update buffers that will " \ 108 "trigger concurrent processing. Will be selected ergonomically " \ 109 "by default.") \ 110 range(0, max_intx) \ 111 \ 112 product(size_t, G1ConcRefinementRedZone, 0, \ 113 "Maximum number of enqueued update buffers before mutator " \ 114 "threads start processing new ones instead of enqueueing them. " \ | 59 "(0 means do not periodically generate this info); " \ 60 "it also requires that logging is enabled on the trace" \ 61 "level for gc+remset") \ 62 range(0, max_intx) \ 63 \ 64 product(double, G1ConcMarkStepDurationMillis, 10.0, \ 65 "Target duration of individual concurrent marking steps " \ 66 "in milliseconds.") \ 67 range(1.0, DBL_MAX) \ 68 \ 69 product(intx, G1RefProcDrainInterval, 10, \ 70 "The number of discovered reference objects to process before " \ 71 "draining concurrent marking work queues.") \ 72 range(1, max_intx) \ 73 \ 74 experimental(double, G1LastPLABAverageOccupancy, 50.0, \ 75 "The expected average occupancy of the last PLAB in " \ 76 "percent.") \ 77 range(0.001, 100.0) \ 78 \ 79 experimental(intx, G1ExpandByPercentOfAvailable, 20, \ 80 "When expanding, % of uncommitted space to claim.") \ 81 range(0, 100) \ 82 \ 83 develop(bool, G1RSBarrierRegionFilter, true, \ 84 "If true, generate region filtering code in RS barrier") \ 85 \ 86 product(size_t, G1UpdateBufferSize, 256, \ 87 "Size of an update buffer") \ 88 range(1, NOT_LP64(32*M) LP64_ONLY(1*G)) \ 89 \ 90 product(size_t, G1ConcRefinementYellowZone, 0, \ 91 "Number of enqueued update buffers that will " \ 92 "trigger concurrent processing. Will be selected ergonomically " \ 93 "by default.") \ 94 range(0, max_intx) \ 95 \ 96 product(size_t, G1ConcRefinementRedZone, 0, \ 97 "Maximum number of enqueued update buffers before mutator " \ 98 "threads start processing new ones instead of enqueueing them. " \ |