JMH 1.8
Aleksey Shipilev
aleksey.shipilev at oracle.com
Mon Apr 6 20:31:15 UTC 2015
Hi,
JMH 1.8 is released and available at Maven Central (thanks to Evgeny,
as usual). This is a feature release, and it includes new features, some
presentation changes, and things that affect internal APIs. Hence, the
minor version bump.
Summary of changes:
* -prof gc now reports GC churn rate, e.g.:
http://cr.openjdk.java.net/~shade/7901370/gc-churn-rate-2.png
The churn rate calculation is based on processing the GC notifications,
and thus being mostly neutral to performance. In steady state, the churn
rate in young spaces is roughly equal to allocation rate. This data is
easily available in JDK 7+. With JDK 6, -prof gc will default to only
gathering the GC count and GC time.
Our tests show the end results is pretty accurate, but, as usual, you
are advised to run multiple iteration/forks to properly estimate the
error. Also, running longer iterations with constant-sized heap is known
to reduce the measurement error for GC metrics.
Tracking:
https://bugs.openjdk.java.net/browse/CODETOOLS-7901370
* Profiler results are now using the different prefix for their names,
instead of "@". This finally makes the profiler results to be sorted
after the secondary results for asymmetric benchmarks. Tracking:
https://bugs.openjdk.java.net/browse/CODETOOLS-7901367
* For internal profilers like -prof gc to be able to normalize the
performance counters per benchmark op, we had to change the
InternalProfiler interface (again). Like the ExternalProfiler, it now
accepts the IterationResult. Tracking:
https://bugs.openjdk.java.net/browse/CODETOOLS-7901371
* Noisy "extended info" results printing was revisited. Tracking:
https://bugs.openjdk.java.net/browse/CODETOOLS-7901372
* A few polishings done for "approximate" scores view. Notably,
near-zero result is now printed as such, not as "10^0". Other minor
improvements are done.
Enjoy!
Thanks,
-Aleksey.
More information about the jmh-dev
mailing list