RFR: 8144: Add rule to detect GC Inverted Parallelism [v2]
Alex Macdonald
aptmac at openjdk.org
Mon Nov 20 18:24:06 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
Alex Macdonald has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains two commits:
- Add jdk21 recordings for rules.jdk test
- 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=01
Stats: 937 lines in 14 files changed: 937 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