Skip to content

Commit 733aa06

Browse files
committed
Rename run-both to run-all
1 parent 45b7e64 commit 733aa06

2 files changed

Lines changed: 59 additions & 22 deletions

File tree

README.md

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -161,19 +161,19 @@ rm -rf target/benchmark-lmdb
161161
./run-lmdb.sh benchmark
162162
```
163163

164-
#### Running Both Benchmark Suites
164+
#### Running All Benchmark Suites
165165

166-
Use the `run-both.sh` script to run both library and version benchmarks sequentially (designed for overnight runs):
166+
Use the `run-all.sh` script to run all three benchmark suites sequentially (designed for overnight runs):
167167

168168
```bash
169-
# Run both benchmarks using 25% of system RAM (default)
170-
./run-both.sh
169+
# Run all benchmarks using 25% of system RAM (default)
170+
./run-all.sh
171171

172-
# Run both benchmarks using 50% of system RAM
173-
./run-both.sh 50
172+
# Run all benchmarks using 50% of system RAM
173+
./run-all.sh 50
174174
```
175175

176-
This will run library comparison benchmarks followed by version regression benchmarks, both in full benchmark mode with 120s iterations. Expect several hours of runtime depending on your system.
176+
This will run LMDB library comparison, library comparison and version regression benchmarks, all in full benchmark mode with 120s iterations. Expect several hours of runtime depending on your system.
177177

178178
### Generating Reports
179179

@@ -196,9 +196,8 @@ After running LMDB benchmarks, generate an LMDB performance report:
196196
```
197197

198198
Reports generate:
199-
- `target/benchmark/README.md` - Full markdown report with charts
200-
- `target/benchmark/index.html` - HTML viewer with embedded charts (open in browser)
201-
- Various SVG charts and supporting files
199+
- `target/benchmark/index.html` - Pure HTML report with embedded SVG charts
200+
- Various SVG chart files
202201

203202
### Publishing Reports
204203

@@ -221,10 +220,10 @@ Reports are published to:
221220
- [versions-benchmark.lmdbjava.org](https://versions-benchmark.lmdbjava.org) - Full version regression analysis
222221

223222
**Workflow for curated reports:**
224-
1. Run full benchmarks: `./run-both.sh` (or individually with `./run-libs.sh benchmark` and `./run-vers.sh benchmark`)
225-
2. Generate reports: `./report-libs.sh` and `./report-vers.sh`
223+
1. Run full benchmarks: `./run-all.sh` (or individually with `./run-lmdb.sh benchmark`, `./run-libs.sh benchmark` and `./run-vers.sh benchmark`)
224+
2. Generate reports: `./report-lmdb.sh`, `./report-libs.sh` and `./report-vers.sh`
226225
3. Review and edit commentary in report scripts if needed, then re-run
227-
4. Publish: `./publish-results.sh` (run twice, once after each report generation)
226+
4. Publish: `./publish-results.sh` (run once after each report generation)
228227

229228
### Performance Bisection
230229

run-both.sh renamed to run-all.sh

Lines changed: 47 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717

1818
set -euo pipefail
1919

20-
# Usage: ./run-both.sh [ram_percent]
21-
# Runs both library and version benchmarks in benchmark mode (full 120s iterations)
20+
# Usage: ./run-all.sh [ram_percent]
21+
# Runs all three benchmark suites (LMDB, libraries, versions) in benchmark mode
2222
# Designed for overnight runs - takes several hours to complete
2323

2424
RAM_PERCENT="${1:-25}"
@@ -27,18 +27,47 @@ echo "========================================"
2727
echo "LmdbJava Full Benchmark Suite"
2828
echo "========================================"
2929
echo ""
30-
echo "This will run both library comparison and version regression benchmarks"
31-
echo "using ${RAM_PERCENT}% of system RAM with full 120s iterations."
30+
echo "This will run all three benchmark suites:"
31+
echo " 1. LMDB library comparison"
32+
echo " 2. Library comparison (all implementations)"
33+
echo " 3. Version regression testing"
34+
echo ""
35+
echo "Using ${RAM_PERCENT}% of system RAM with full 120s iterations."
3236
echo ""
3337
echo "Estimated duration: Several hours (depends on system performance)"
3438
echo "Started at: $(date)"
3539
echo ""
3640

3741
START_TIME=$(date +%s)
3842

43+
# Run LMDB library comparison benchmarks
44+
echo "========================================"
45+
echo "Step 1/3: LMDB Library Comparison"
46+
echo "========================================"
47+
echo ""
48+
49+
if ./run-lmdb.sh benchmark; then
50+
echo ""
51+
echo "✓ LMDB library comparison completed successfully"
52+
LMDB_SUCCESS=true
53+
else
54+
echo ""
55+
echo "✗ LMDB library comparison failed"
56+
LMDB_SUCCESS=false
57+
fi
58+
59+
LMDB_END_TIME=$(date +%s)
60+
LMDB_DURATION=$((LMDB_END_TIME - START_TIME))
61+
LMDB_HOURS=$((LMDB_DURATION / 3600))
62+
LMDB_MINUTES=$(((LMDB_DURATION % 3600) / 60))
63+
64+
echo ""
65+
echo "LMDB benchmarks duration: ${LMDB_HOURS}h ${LMDB_MINUTES}m"
66+
echo ""
67+
3968
# Run library comparison benchmarks
4069
echo "========================================"
41-
echo "Step 1/2: Library Comparison Benchmarks"
70+
echo "Step 2/3: Library Comparison Benchmarks"
4271
echo "========================================"
4372
echo ""
4473

@@ -53,7 +82,7 @@ else
5382
fi
5483

5584
LIBS_END_TIME=$(date +%s)
56-
LIBS_DURATION=$((LIBS_END_TIME - START_TIME))
85+
LIBS_DURATION=$((LIBS_END_TIME - LMDB_END_TIME))
5786
LIBS_HOURS=$((LIBS_DURATION / 3600))
5887
LIBS_MINUTES=$(((LIBS_DURATION % 3600) / 60))
5988

@@ -63,7 +92,7 @@ echo ""
6392

6493
# Run version regression benchmarks
6594
echo "========================================"
66-
echo "Step 2/2: Version Regression Benchmarks"
95+
echo "Step 3/3: Version Regression Benchmarks"
6796
echo "========================================"
6897
echo ""
6998

@@ -99,6 +128,12 @@ echo ""
99128
echo "Finished at: $(date)"
100129
echo ""
101130
echo "Results:"
131+
if [ "$LMDB_SUCCESS" = true ]; then
132+
echo " ✓ LMDB benchmarks: ${LMDB_HOURS}h ${LMDB_MINUTES}m"
133+
else
134+
echo " ✗ LMDB benchmarks failed: ${LMDB_HOURS}h ${LMDB_MINUTES}m"
135+
fi
136+
102137
if [ "$LIBS_SUCCESS" = true ]; then
103138
echo " ✓ Library benchmarks: ${LIBS_HOURS}h ${LIBS_MINUTES}m"
104139
else
@@ -114,10 +149,13 @@ fi
114149
echo ""
115150
echo "Total duration: ${TOTAL_HOURS}h ${TOTAL_MINUTES}m"
116151
echo ""
117-
echo "Use report-*.sh to generate target/benchmark suitable for publish-results.sh"
152+
echo "Generate reports with:"
153+
echo " ./report-lmdb.sh"
154+
echo " ./report-libs.sh"
155+
echo " ./report-vers.sh"
118156
echo ""
119157

120-
if [ "$LIBS_SUCCESS" = true ] && [ "$VERS_SUCCESS" = true ]; then
158+
if [ "$LMDB_SUCCESS" = true ] && [ "$LIBS_SUCCESS" = true ] && [ "$VERS_SUCCESS" = true ]; then
121159
exit 0
122160
else
123161
exit 1

0 commit comments

Comments
 (0)