In ParNew, pushes to the (single, and shared among GC workers) preserved mark stack are guarded by a lock. If many marks need to be preserved during a GC with promotion failure, this can cause a lot of contention and a big scalability bottleneck, resulting in unreasonably long GCs.
We should introduce per-worker preserved mark stacks (similarly to what was done in G1) to eliminate this issue.
We should introduce per-worker preserved mark stacks (similarly to what was done in G1) to eliminate this issue.
- relates to
-
JDK-8146991 Introduce per-worker preserved mark stacks in ParallelGC
-
- Resolved
-
-
JDK-8151556 Use the PreservedMarks* classes for the G1 preserved mark stacks
-
- Resolved
-