RFR(XXS): 8006894: G1: Number of marking threads missing from PrintFlagsFinal output
Jon Masamitsu
jon.masamitsu at oracle.com
Fri Jan 25 00:00:55 UTC 2013
John,
My comment about adding the FLAG_IS_DEFAULT to the
test is a little crazy. Unless someone else thinks it has
value, then it's brilliant :-). Ignore it unless you get a second
yea on it.
Jon
On 1/24/2013 3:45 PM, Jon Masamitsu wrote:
> John,
>
> Change looks good.
>
> It wasn't obvious to me that the default for ConcGCThreads is 0 so
> I had to look at the "if (ConcGCThreads > 0)" a couple of times
> before I understood that it was really
> "if (ConcGCThreads-is-user-specified-and-greater-than-0)"
>
> Would you consider changing to
>
> if (!FLAG_IS_DEFAULT(ConcGCThreads) && ConcGCThreads > 0)
>
> It's more wordy and doesn't really change anything but I think
> it's more readable.
>
> Jon
>
>
>
> On 1/24/2013 3:01 PM, John Cuthbertson wrote:
>> Hi All,
>>
>> Can I have a couple of volunteers look over this small change? The
>> webrev can be found at:
>> http://cr.openjdk.java.net/~johnc/8006894/webrev.0/
>>
>> Summary:
>> When G1 calculates the number of marking threads based upon (the
>> develop-only) G1MarkingOverheadPercent or (more usually)
>> ParallelGCThreads, we weren't setting the value of ConcGCThreads. As
>> a result the output of PrintFlagsFinal would always show a zero if
>> ConcGCThreads wasn't specified on the command line:
>>
>> uintx ConcGCThreads = 0
>> {product}
>>
>> This made it difficult for the performance team to analyze marking
>> behavior and offer advice. With this change we now get the calculated
>> number of marking threads:
>>
>> Using ParallelGCThreads (default: 4):
>>
>> uintx ConcGCThreads := 1
>> {product}
>>
>> Using G1MarkingOverheadPercent (50):
>>
>> uintx ConcGCThreads := 2
>> {product}
>>
>> Testing:
>> Command line testing; specjvm98 and dacapo with a low IHOP value
>> (marking threshold).
>>
>> Thanks,
>>
>> JohnC
More information about the hotspot-gc-dev
mailing list