RFR: 8144: Add rule to detect GC Inverted Parallelism
Alex Macdonald
aptmac at openjdk.org
Mon Oct 30 15:17:01 UTC 2023
This PR addresses JMC-8144 [[0]](https://bugs.openjdk.org/browse/JMC-8144). There is a GC log analysis tool called Garbagecat [[1]](https://github.com/mgm3746/garbagecat/tree/main), which operates on GC logs and identifies performance issues and suggests potential solutions (similar to our automated analysis page). One metric Garbagecat flags is **"inverted parallelism"**, which takes a look at the sys+usr time of a parallel GC and compares it against the real (wall) time. If the parallelism is low, this can indicate that the parallel gc is operating at the efficiency of serial gc, and there could be room for improvement. This GC time information is now included in the jdk.GCCPUTime event added in JDK20+.
This PR requires support for the jdk.GCCPUTime event [[2]](https://bugs.openjdk.org/browse/JDK-8291753), so it also doubles as a PR towards JMC-7895 [[3]](https://bugs.openjdk.org/browse/JMC-7895).
[0] https://bugs.openjdk.org/browse/JMC-8144
[1] https://github.com/mgm3746/garbagecat/tree/main
[2] https://bugs.openjdk.org/browse/JDK-8291753
[3] https://bugs.openjdk.org/browse/JMC-7895
-------------
Commit messages:
- 8144: Add rule to detect GC Inverted Parallelism
Changes: https://git.openjdk.org/jmc/pull/528/files
Webrev: https://webrevs.openjdk.org/?repo=jmc&pr=528&range=00
Issue: https://bugs.openjdk.org/browse/JMC-8144
Stats: 384 lines in 11 files changed: 384 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/jmc/pull/528.diff
Fetch: git fetch https://git.openjdk.org/jmc.git pull/528/head:pull/528
PR: https://git.openjdk.org/jmc/pull/528
More information about the jmc-dev
mailing list