Using JMH is easy!
Using the terminal to install the JDK globally
Mac OSX with Homebrew*
brew cask install java
Linux
sudo apt-get install openjdk-8-jdk
For Linux, Mac OSX and Windows
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Validate you have installed the JDK correctly by running the following in your terminal:
javac -version
Mac OSX with Homebrew*
brew install maven
Linux
sudo apt-get install maven
Mac OSX, Linux & Windows
You can just download and unpack maven into your project folder, either run the mvn
from within the /bin/
directory of the package or add a PATH variable/alias so that you can use the mvn
command easily
Maven Package Download: http://maven.apache.org/download.cgi
Install Instructions: https://maven.apache.org/install.html
Run:
mvn clean install
This will generate a benchmarks.jar in: /target
Run the following command
java -jar target/benchmarks.jar
Enable JSON output by adding the -rf json
and -rff ./path-for-output/filename
, i.e:
java -jar benchmarks.jar -rf json -rff ./benchmark-output
You can export your benchmark to other formats, to see them run:
java -jar benchmarks.jar -lrf
List benchmarks
java -jar target/benchmarks.jar -l
Specify an individual benchmark file to be run
java -cp target/benchmark.jar com.org.benchmarking.SimpleBenchmark
java -cp target/benchmark.jar com.org.benchmarking.ExtendedBenchmark
jzillmann
https://github.com/jzillmann/
Baeldung
https://www.baeldung.com/java-microbenchmark-harness
jenkov
http://tutorials.jenkov.com/java-performance/jmh.html