Eight benchmark/demo classes, a deterministic test suite, and 12 captured output files generated by scripts/run-all.sh on JDK 25.0.5 (Temurin) with JMH 1.37. Co-Authored-By: Claude Sonnet 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_017ic4b6Fj2JNt7dRev4pZPe
27 lines
1.4 KiB
Bash
Executable File
27 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Regenerates every file in output/. Takes roughly 6-8 minutes on a 2-vCPU host.
|
|
# Timing numbers drift from run to run; read the shape (which is bigger, by roughly how much).
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")/.."
|
|
|
|
clean() { grep -vE 'JAVA_TOOL_OPTIONS|^Picked up|^WARNING|^# VM options:' || true; }
|
|
JAR="java -jar target/benchmarks.jar"
|
|
|
|
mvn -q -B package -DskipTests 2>&1 | clean
|
|
|
|
java -cp target/classes com.ankurm.jmhbasics.NaiveTimingDemo 2>&1 | clean > output/01-naive-timing.txt
|
|
$JAR DeadCodeBenchmark 2>&1 | clean > output/02-deadcode-jmh.txt
|
|
java -cp target/benchmarks.jar com.ankurm.jmhbasics.LifecycleDemo 2>&1 | clean > output/03-lifecycle.txt
|
|
$JAR ForkingBenchmark -f 0 -i 8 2>&1 | clean > output/04-forking-f0.txt
|
|
$JAR ForkingBenchmark -f 1 -i 8 2>&1 | clean > output/05-forking-f1.txt
|
|
$JAR StateScopeBenchmark 2>&1 | clean > output/06-state-scope.txt
|
|
$JAR AllocationBenchmark -prof gc 2>&1 | clean > output/07-allocation-gc.txt
|
|
$JAR SumBenchmark 2>&1 | clean > output/08-sum-param.txt
|
|
$JAR SortBenchmark -f 1 -wi 10 -w 200ms -i 5 -r 1s -bm avgt -tu us 2>&1 | clean > output/09-warmup-trace.txt
|
|
$JAR SortBenchmark -f 1 2>&1 | clean > output/10-sort-modes.txt
|
|
$JAR -lprof 2>&1 | clean > output/11-list-profilers.txt
|
|
|
|
mvn -q -B test 2>&1 | clean || true
|
|
cp target/surefire-reports/com.ankurm.jmhbasics.JmhBasicsTest.txt output/12-tests.txt
|
|
echo "Regenerated output/01-12."
|