The JMH plugin appears to have issues with the latest Gradle daemon so disable it when running JMH from Gradle. The following will run all JMH benchmarks.
./gradlew jmh
Add the -Pjmh.includes=<benchmark>
project property to run a specific benchmark.
./gradlew jmh -Pjmh.include=<benchmark>
Add the -Pjmh.profilers=<profilers>
project property to run benchmarks with specific JMH profilers enabled.
./gradlew jmh -Pjmh.include=<benchmark> -Pjmh.profilers=<profilers>
Specify all options as -Pjmh.<option>=<value>
. All options are defined by the
JMH Gradle Plugin. Not all
options have been passed through. You can add missing option in the jmh.gradle file.
./gradlew jmh -Pjmh.include=<benchmark> -Pjmh.jvm=/path/to/java11/bin/java
You can build an uber jar containing all the built JMF benchmarks and runtime dependencies.
./gradlew jmhJar
Due to vesion mismatches on jopt you cannot get -h
help output from JMH. Please see
JMH Tutorial for command line
options.
To list benchmarks.
java -jar geode-core/build/libs/geode-core-*-jmh.jar -l
Run with specific benchmark.
java -jar geode-core/build/libs/geode-core-*-jmh.jar <options> <benchmark>
To get a list of available profilers.
java -jar geode-core/build/libs/geode-core-*-jmh.jar -lprof
Run with specific profiler.
java -jar geode-core/build/libs/geode-core-*-jmh.jar <options> -prof:<profiler> <benchmark>