diff --git a/jmh/run-without-maven.sh b/jmh/run-without-maven.sh new file mode 100644 index 0000000..1a88061 --- /dev/null +++ b/jmh/run-without-maven.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +# Same benchmarks without Maven: fetch the four jars, compile with the JMH +# annotation processor, run org.openjdk.jmh.Main directly. +set -euo pipefail +cd "$(dirname "$0")" +mkdir -p lib out +for u in org/openjdk/jmh/jmh-core/1.37/jmh-core-1.37.jar \ + org/openjdk/jmh/jmh-generator-annprocess/1.37/jmh-generator-annprocess-1.37.jar \ + net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar \ + org/apache/commons/commons-math3/3.6.1/commons-math3-3.6.1.jar; do + [ -f "lib/$(basename "$u")" ] || curl -sSL -o "lib/$(basename "$u")" "https://repo1.maven.org/maven2/$u" +done +CP=$(ls lib/*.jar | tr '\n' ':') +javac --add-modules jdk.incubator.vector -cp "$CP" -proc:full -d out $(find src -name '*.java') +java --add-modules jdk.incubator.vector -cp "out:$CP" org.openjdk.jmh.Main "$@"