SIMD kernels (square-and-add, masked filter, brightness clamp, FP reduction ordering), an exploratory timing harness, JMH benchmarks with Maven and Maven-free builds, run scripts, README and the captured results with their exact environment.
16 lines
827 B
Bash
16 lines
827 B
Bash
#!/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 "$@"
|