JDK-8006894 : G1: Number of marking threads missing from PrintFlagsFinal output
  • Type: Bug
  • Component: hotspot
  • Sub-Component: gc
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2013-01-24
  • Updated: 2013-09-18
  • Resolved: 2013-02-02
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7 JDK 8 Other
7u40Fixed 8Fixed hs24Fixed
Description
The performance team noticed that the number of concurrent marking threads, unless specified on the command line, is not listed in the PrintFlagsFinal output.

When the number of marking threads is not specified on the command line using -XX:ConcGCThreads=, the number of marking threads is ergonomically calculated based upon the value of G1MarkingOverheadPercent, and finally by scaling the value of ParallelGCThreads.

The calculated value is not listed in the PrintFlagsFinalOutput:

    uintx ConcGCThreads                             = 0               {product}           

This makes it hard for the performance team to analyze marking behavior and offer tuning advice.


Comments
Fix is to set ConcGCThreads after the number of concurrent marking threads has been calculated.
24-01-2013