On Tue, 22 Oct 2024 18:25:53 GMT, William Kemper <wkem...@openjdk.org> wrote:
>> William Kemper has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 492 commits: >> >> - Merge remote-tracking branch 'shenandoah/master' into >> great-genshen-pr-redux >> - Merge >> - 8342560: GenShen: Fix confusing method name >> >> Reviewed-by: ysr >> - 8342564: GenShen: Only reference young/old generation names in >> generational mode >> >> Reviewed-by: xpeng, ysr >> - Merge remote-tracking branch 'jdk/master' into great-genshen-pr-redux >> - Merge remote-tracking branch 'shenandoah/master' into >> great-genshen-pr-redux >> - 8342214: GenShen: Reduce code duplication in shFreeSet with iterator >> abstraction >> >> Reviewed-by: kdnilsen, ysr >> - 8342239: GenShen: Revert changes in adaptive heuristic to avoid overflow >> on 32 bit >> >> Reviewed-by: ysr >> - 8342278: GenShen: Move non-generational mode test out of generational >> test configuration >> >> Reviewed-by: ysr >> - 8342255: GenShen: Remove unnecessary enum initial values >> >> Reviewed-by: ysr >> - ... and 482 more: https://git.openjdk.org/jdk/compare/71583222...2a2aa408 > > We disabled tiered compilation to force everything to compile through C2 to > get more consistent results. @earthling-amzn ,thanks for providing your options. Looks like disabling pacing would help the score. -XX:+UseShenandoahGC -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-TieredCompilation -XX:-ShenandoahPacing -XX:+AlwaysPreTouch -XX:+DisableExplicitGC I guess 4 cores may not be a target configuration for pauseless GC since generational pauseless GC requires at least 2 concurrent GC threads that already occupy half of CPU resource. I did a rough test on 8 cores and 16 cores according to your options. GenShen doesn't have obvious advantages with 8 cores and Shenandoah seems to outperform genshen significantly with 16 cores. Would you please help verify the result in your environment? 8 cores -Xmx8g -Xms8g: GenShen: RUN RESULT: hbIR (max attempted) = 9640, hbIR (settled) = 8050, max-jOPS = 8098, critical-jOPS = 6132 RUN RESULT: hbIR (max attempted) = 8944, hbIR (settled) = 8574, max-jOPS = 7781, critical-jOPS = 6130 Shenandoah: RUN RESULT: hbIR (max attempted) = 9640, hbIR (settled) = 8050, max-jOPS = 7616, critical-jOPS = 6194 RUN RESULT: hbIR (max attempted) = 9640, hbIR (settled) = 8050, max-jOPS = 7712, critical-jOPS = 6262 16 cores -Xmx20g -Xms20g: GenShen: RUN RESULT: hbIR (max attempted) = 19881, hbIR (settled) = 16584, max-jOPS = 17694, critical-jOPS = 13274 RUN RESULT: hbIR (max attempted) = 19881, hbIR (settled) = 18724, max-jOPS = 17694, critical-jOPS = 13445 Shenandoah: RUN RESULT: hbIR (max attempted) = 23838, hbIR (settled) = 20446, max-jOPS = 18594, critical-jOPS = 15441 RUN RESULT: hbIR (max attempted) = 20138, hbIR (settled) = 19989, max-jOPS = 18728, critical-jOPS = 14967 ------------- PR Comment: https://git.openjdk.org/jdk/pull/21273#issuecomment-2445672323