To set up benchmarking: 1. In the jalview directory run ant makedist This builds a jalview.jar file and puts it into dist/ 2. Make a lib directory in benchmarking/ if not already present. 3. In the benchmarking directory run: mvn install:install-file -Dfile=../dist/jalview.jar -DgroupId=jalview.org -DartifactId=jalview -Dversion=1.0 -Dpackaging=jar -DlocalRepositoryPath=lib to install the jalview.jar file in the local maven repository. The pom.xml in the benchmarking references this installation, so if you change the names the pom.xml file will also need to be updated. 4. Build and run jmh benchmarking. In the benchmarking directory: mvn clean install java -jar target/benchmarks.jar To get output as a json file use instead: java -jar target/benchmarks.jar -rf json JSON files can be visualised using the viewer at http://jmh.morethan.io/ To get help use the standard -h option: java -jar target/benchmarks.jar -h More information here: http://openjdk.java.net/projects/code-tools/jmh/ http://java-performance.info/jmh/ 5. If you make changes to the jalview code everything will need to be refreshed, by calling: mvn dependency:purge-local-repository -DactTransitively=false -DreResolve=false followed by steps 3 and 4 again.