JMH 1.20
Aleksey Shipilev
shade at redhat.com
Tue Jan 23 09:20:57 UTC 2018
Hi,
JMH 1.20 is released and available on Maven Central. This release comes with the following features
and bugfixes:
*) dtraceasm profiler for Mac OS X, contributed by Vsevolod Tolstopyatov. This allows perfasm-like
functionality on Mac OS X. This requires functional dtrace, superuser privileges, and sometimes
additional system configuration. Try it out, and report problems at jmh-dev@!
https://bugs.openjdk.java.net/browse/CODETOOLS-7902097
*) jmh.separateClasspathJAR option to handle benchmarks with long classpath, base patch contributed
by David Karnok. This optionally handles the case of operating systems/environments that have limit
on the size of the command line.
https://bugs.openjdk.java.net/browse/CODETOOLS-7902106
*) Support enum params that override Object#toString(), contributed by Anuraag Agrawal. This fixes a
nasty overlook in @Param handling for enums, that has the potential to break the benchmarks.
https://bugs.openjdk.java.net/browse/CODETOOLS-7902095
*) The invocation order of @Setup/@TearDown methods on @State objects of different Scopes was messed
up, which may break benchmark assumptions.
https://bugs.openjdk.java.net/browse/CODETOOLS-7902096
*) External profilers should be called with before/afterTrial during warmup forks, for consistency
https://bugs.openjdk.java.net/browse/CODETOOLS-7902088
*) UX: Linux perf should not assume cycles/instructions counters are always available. This saves
some fatal errors on platforms that do not provide them (e.g. VMs without hardware performance
counters support). This also makes default perfasm profiler narrower, as we only report "cycles" by
default.
https://bugs.openjdk.java.net/browse/CODETOOLS-7902105
*) UX: Make sure only a single profiler of given type is used
https://bugs.openjdk.java.net/browse/CODETOOLS-7901990
*) UX: perfasm provides better suggestions about PrintAssembly failures
https://bugs.openjdk.java.net/browse/CODETOOLS-7902107
*) UX: JMH Core Benchmarks includes more advanced timing tests
https://bugs.openjdk.java.net/browse/CODETOOLS-7902040
http://central.maven.org/maven2/org/openjdk/jmh/jmh-core-benchmarks/1.20/jmh-core-benchmarks-1.20-full.jar
*) Make sure JMH builds and runs with JDK 9 GA -- mostly build time fixes, but some internal API
changes, and fixes for regressions too:
https://bugs.openjdk.java.net/browse/CODETOOLS-7902041
https://bugs.openjdk.java.net/browse/CODETOOLS-7902085
*) Typos and cleanups
https://bugs.openjdk.java.net/browse/CODETOOLS-7901985
https://bugs.openjdk.java.net/browse/CODETOOLS-7901984
Enjoy!
Thanks,
-Aleksey
More information about the jmh-dev
mailing list