Integrated: 8325403: Add SystemGC JMH benchmarks

Stefan Johansson sjohanss at openjdk.org
Wed Feb 14 15:02:13 UTC 2024


On Fri, 9 Feb 2024 09:36:35 GMT, Stefan Johansson <sjohanss at openjdk.org> wrote:

> Please review this change to add some System GC JMH benchmarks.
> 
> **Summary**
> When developing and improving the Full GC implementation for the different GCs, using `System.gc()` to test performance is sometime very useful. This change adds a set of System GC benchmarks using JMH. The tests all have the same structure, a `@Setup` function that generates heap contents and a `@Benchmark` function which only calls `System.gc()`. The different scenarios covers some basic use-cases but more can certainly be added going forward. 
> 
> Since the benchmark function is just a single call to trigger the GC it makes sense to use the single shot JMH mode and fork a new JVM for each run. The tests also specify default heap options to avoid triggering GC during object creation to give all runs more or less the same heap layout.
> 
> **Testing**
> Local and aurora testing verifying that results are fairly stable.

This pull request has now been integrated.

Changeset: 130f429c
Author:    Stefan Johansson <sjohanss at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/130f429c6fd1e31fbdbd523419f8d8447e9da0e5
Stats:     885 lines in 13 files changed: 885 ins; 0 del; 0 mod

8325403: Add SystemGC JMH benchmarks

Reviewed-by: ecaspole, ayang, tschatzl

-------------

PR: https://git.openjdk.org/jdk/pull/17784


More information about the hotspot-gc-dev mailing list