JDK-8148359 : Improve concurrent mark thread synchronization on startup
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 9
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2016-01-27
  • Updated: 2019-11-22
  • Resolved: 2019-11-22
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.
Other
tbdResolved
Related Reports
Duplicate :  
Relates :  
Relates :  
Description
In JDK-8136854 we found that the current code to synchronize the concurrent mark thread with the main thread during initialization uses a polling loop with a (previously) large delay.

In very short running applications (microbenchmarks) this caused very slow startup of G1. In JDK-8136854 this problem has been resolved by decreasing this delay significantly.

However it would likely be much better to use a notify/wait scheme for this to avoid any kind of polling loop, which seems a much "nicer" solution.

This CR is to prototype this and evaluate it against the current solution.