Skip to content

Halve random-access benchmark CI time: 5 s measurements, parallel and cached data generation - #11244

Merged
robert3005 merged 6 commits into
developfrom
ji/cool-hypatia-lsuwfm
Nov 5, 2026
Merged

robert3005 merged 6 commits into
developfrom
ji/cool-hypatia-lsuwfm

Conversation

@joseph-isaacs

@joseph-isaacs joseph-isaacs commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Summary

The local random-access benchmark job took ~23 min: 18.3 min of timed measurements and 4.1 min of data generation, ~80% of which was writing LitData. This PR cuts the job to roughly 12 min without changing what is measured.

Changes

  • 5 s time limit per measurement (was the 10 s default). scripts/random-access-split.py passes --time-limit 5. Each number is a median per-lookup latency, so the time limit only sets the sample count. Even at 5 s the fast formats take thousands of samples.
  • Parallel data generation. --prepare-data runs one process per dataset concurrently. Each dataset's output is printed in its own log group.
  • Cached Parquet and LitData data. develop-bench.yml and pr-bench-runner.yml restore Parquet and LitData with actions/cache. Vortex, Arrow IPC and Lance are written every run, so the formats under test always come from the current code and lockfile. The key covers the dataset generators (vortex-bench/src/datasets/**, vortex-bench/src/random_access/**), the parquet/arrow-*/rand* versions in Cargo.lock, the LitData script, litdata.rs and the pinned litdata version. Local and S3 jobs use separate keys.

Results on this PR

All three runs use the same code; only the time limit or cache state differs.

Run Time limit Cache Data generation Benchmark step Bench job
develop (before) 10 s n/a 4.1 min 18.3 min 23.0 min
5 s run 5 s miss (saved) 2.5 min 10.0 min 13.2 min
10 s control 10 s hit 0.9 min 18.3 min 19.9 min

With 5 s and a cache hit the job should take ~11.5 min.

Do the numbers change? No. Hot geomeans vs develop:

Format 5 s 10 s control
Vortex 1.005x 1.000x
Parquet 1.013x 1.009x
Lance 1.006x 1.005x
LitData 1.011x 1.000x
Arrow IPC 1.077x 1.046x

Both runs report "No clear signal". Arrow IPC nested-lists/nested-structs read ~10–20% slower than develop at both 5 s and 10 s, so that shift is not caused by the time limit. It is either run-to-run variance between bench machines or something about PR runs; worth a separate look if it persists.

Checks: yamllint --strict on both workflows and git diff --check. The workflow changes were exercised by the benchmark runs above, covering both a cache miss and a cache hit.

🤖 Generated with Claude Code

https://claude.ai/code/session_01UeniB9mYWJs2z49XPgvbPi

joseph-isaacs and others added 4 commits November 4, 2026 19:18
…e legacy taxi runs

Each of the 80 per-combination invocations measured for 10 s, and every taxi
invocation repeated the legacy fixed-index taxi measurement, which the merge
then discarded. Measure for 5 s and run the legacy taxi measurement only with
the correlated pattern, which covers both open modes once.

Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UeniB9mYWJs2z49XPgvbPi
Signed-off-by: Claude <noreply@anthropic.com>
Revert the benchmark run changes from the previous commit, so measurements
keep the 10 s time limit and the legacy taxi runs.

Data generation now runs one process per dataset concurrently. LitData,
about 80% of generation time and independent of Vortex, is generated in a
separate stage and cached with actions/cache, keyed on the Parquet files it
is converted from plus the conversion script and litdata version.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UeniB9mYWJs2z49XPgvbPi
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Only Vortex, Arrow IPC and Lance are written on every run. Parquet and
LitData are restored from actions/cache, keyed on the dataset generators,
the parquet/arrow/rand crate versions in Cargo.lock, and the LitData
conversion script and version. Local and S3 jobs use separate keys.

This replaces the separate LitData generation stage: every format is now
generated in one parallel pass that skips files restored from the cache.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UeniB9mYWJs2z49XPgvbPi
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Experiment: halve the per-measurement time limit from 10 s to 5 s to check
whether the benchmark results change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UeniB9mYWJs2z49XPgvbPi
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
@joseph-isaacs joseph-isaacs added the action/bench-random-access Run only the random-access benchmark on this PR label Nov 4, 2026 — with Claude
@github-actions github-actions Bot removed the action/bench-random-access Run only the random-access benchmark on this PR label Nov 4, 2026
@github-actions

github-actions Bot commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Polar Signals Profiling Results

Latest Run

Status Commit Job Attempt Link
🟢 Done 11b301f random-access-bench 1 Explore Profiling Data
Previous Runs (1)
Status Commit Job Attempt Link
🟢 Done a92a117 random-access-bench 1 Explore Profiling Data

Powered by Polar Signals Cloud

@github-actions

github-actions Bot commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Benchmarks: Random Access 📖

Commits: PR 11b301fc vs base 9d2da798
Verdict: No clear signal (low confidence)
Attributed Vortex impact: -0.9%
Engines: random-access No clear signal (-0.9%, low confidence)
Vortex (geomean): hot 1.000x ➖ · cold 1.051x ➖
Parquet (geomean): hot 1.009x ➖ · cold 1.046x ➖
Shifts: Parquet (control) +0.9% · Median polish +0.1%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.
  • Hot vs cold: Every measurement is run several times. The first run is reported as the cold run, and the median of the runs after it is reported as the hot run. The verdict and significance use hot runs; each target's geomean reports hot and cold beside each other where the individual runs were recorded and hot alone where they were not, the cold column shows first-run cost per row, and hot/cold is how much of each run the warm path saves. Rows whose results predate per-run reporting show only one value, taken from the value the runner reported.
  • Table cells: Each cell reads PR / base / %diff. The hot and cold columns mark a change as 🔴 slower or 🟢 faster once it clears this suite's threshold; anything smaller is noise here and is left unmarked, as is hot/cold, because a shift in the warm-up ratio is not a win or a loss by itself.

vortex / arrow-ipc / ns (1.046x ➖, 1↑ 7↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
random-access/feature-vectors/correlated/arrow-ipc-cached 3153975 / 3141154 / +0.4% 3214844 / 3277667 / -1.9% 0.98 / 0.96 / +2.4%
random-access/feature-vectors/correlated/arrow-ipc-reopen 3269134 / 3205640 / +2.0% 12622452 / 9552681 / +32.1% 🔴 0.26 / 0.34 / -22.8%
random-access/feature-vectors/uniform/arrow-ipc-cached 51684094 / 55345047 / -6.6% 51373082 / 55410467 / -7.3% 1.01 / 1.00 / +0.7%
random-access/feature-vectors/uniform/arrow-ipc-reopen 34402829 / 55696350 / -38.2% 🟢 203474127 / 130458053 / +56.0% 🔴 0.17 / 0.43 / -60.4%
random-access/nested-lists/correlated/arrow-ipc-cached 65846 / 60121 / +9.5% 72284 / 57722 / +25.2% 🔴 0.91 / 1.04 / -12.5%
random-access/nested-lists/correlated/arrow-ipc-reopen 106123 / 94296 / +12.5% 🔴 3789675 / 3679155 / +3.0% 0.03 / 0.03 / +9.3%
random-access/nested-lists/uniform/arrow-ipc-cached 1217269 / 1027408 / +18.5% 🔴 1234774 / 1024864 / +20.5% 🔴 0.99 / 1.00 / -1.7%
random-access/nested-lists/uniform/arrow-ipc-reopen 1265064 / 1080478 / +17.1% 🔴 26175564 / 28891585 / -9.4% 0.05 / 0.04 / +29.2%
random-access/nested-structs/correlated/arrow-ipc-cached 53654 / 47519 / +12.9% 🔴 52385 / 48715 / +7.5% 1.02 / 0.98 / +5.0%
random-access/nested-structs/correlated/arrow-ipc-reopen 94034 / 82851 / +13.5% 🔴 3639712 / 3367051 / +8.1% 0.03 / 0.02 / +5.0%
random-access/nested-structs/uniform/arrow-ipc-cached 873708 / 776104 / +12.6% 🔴 893406 / 770824 / +15.9% 🔴 0.98 / 1.01 / -2.9%
random-access/nested-structs/uniform/arrow-ipc-reopen 926142.5 / 829577 / +11.6% 🔴 19105115 / 25889153 / -26.2% 🟢 0.05 / 0.03 / +51.3%
random-access/taxi/arrow-ipc-cached 72495 / 67412 / +7.5% 73420 / 68479 / +7.2% 0.99 / 0.98 / +0.3%
random-access/taxi/arrow-ipc-reopen 166962 / 157762 / +5.8% 3490074 / 3115786 / +12.0% 🔴 0.05 / 0.05 / -5.5%
random-access/taxi/correlated/arrow-ipc-cached 121236 / 119468 / +1.5% 135727 / 116530 / +16.5% 🔴 0.89 / 1.03 / -12.9%
random-access/taxi/correlated/arrow-ipc-reopen 222958 / 210416 / +6.0% 1565129 / 1772715 / -11.7% 🟢 0.14 / 0.12 / +20.0%
random-access/taxi/uniform/arrow-ipc-cached 2893268 / 2739994 / +5.6% 2864969 / 2729635 / +5.0% 1.01 / 1.00 / +0.6%
random-access/taxi/uniform/arrow-ipc-reopen 3059619 / 2864807 / +6.8% 37473396 / 32351016 / +15.8% 🔴 0.08 / 0.09 / -7.8%
random-access / vortex-file-compressed / ns (1.000x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
random-access/feature-vectors/correlated/vortex-cached 110767 / 109292 / +1.3% 102828 / 103131 / -0.3% 1.08 / 1.06 / +1.6%
random-access/feature-vectors/correlated/vortex-reopen 1942736 / 1855534 / +4.7% 4204333 / 3704662 / +13.5% 🔴 0.46 / 0.50 / -7.7%
random-access/feature-vectors/uniform/vortex-cached 1064804 / 1066422 / -0.2% 1061814 / 1118666 / -5.1% 1.00 / 0.95 / +5.2%
random-access/feature-vectors/uniform/vortex-reopen 3080990 / 3045703 / +1.2% 11909703 / 11523122 / +3.4% 0.26 / 0.26 / -2.1%
random-access/nested-lists/correlated/vortex-cached 96971 / 95884 / +1.1% 104405 / 97781 / +6.8% 0.93 / 0.98 / -5.3%
random-access/nested-lists/correlated/vortex-reopen 368416 / 347105 / +6.1% 2348506 / 2075737 / +13.1% 🔴 0.16 / 0.17 / -6.2%
random-access/nested-lists/uniform/vortex-cached 479054 / 496571 / -3.5% 475623 / 493356 / -3.6% 1.01 / 1.01 / +0.1%
random-access/nested-lists/uniform/vortex-reopen 953321 / 918116.5 / +3.8% 9286204 / 8046617 / +15.4% 🔴 0.10 / 0.11 / -10.0%
random-access/nested-structs/correlated/vortex-cached 125743 / 125400 / +0.3% 127155 / 128538 / -1.1% 0.99 / 0.98 / +1.4%
random-access/nested-structs/correlated/vortex-reopen 425874 / 419909 / +1.4% 4052366 / 3404620 / +19.0% 🔴 0.11 / 0.12 / -14.8%
random-access/nested-structs/uniform/vortex-cached 291563 / 294890 / -1.1% 286301 / 292251 / -2.0% 1.02 / 1.01 / +0.9%
random-access/nested-structs/uniform/vortex-reopen 669325.5 / 687787 / -2.7% 5156191 / 4595512 / +12.2% 🔴 0.13 / 0.15 / -13.3%
random-access/taxi/correlated/vortex-cached 325955 / 334400 / -2.5% 324111 / 333060 / -2.7% 1.01 / 1.00 / +0.2%
random-access/taxi/correlated/vortex-reopen 1236161 / 1245518 / -0.8% 2608805 / 2473185 / +5.5% 0.47 / 0.50 / -5.9%
random-access/taxi/uniform/vortex-cached 1458476 / 1493556 / -2.3% 1466145 / 1485363 / -1.3% 0.99 / 1.01 / -1.1%
random-access/taxi/uniform/vortex-reopen 3658072 / 3713758 / -1.5% 7122952 / 6134172 / +16.1% 🔴 0.51 / 0.61 / -15.2%
random-access/taxi/vortex-cached 266413 / 272222 / -2.1% 283162 / 266531 / +6.2% 0.94 / 1.02 / -7.9%
random-access/taxi/vortex-reopen 1042272 / 1064199 / -2.1% 3483058 / 3428621 / +1.6% 0.30 / 0.31 / -3.6%
random-access / parquet / ns (1.009x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
random-access/feature-vectors/correlated/parquet-cached 10240527 / 10097577 / +1.4% 10207238 / 10098602 / +1.1% 1.00 / 1.00 / +0.3%
random-access/feature-vectors/correlated/parquet-reopen 10530512 / 10416595 / +1.1% 17983440 / 17133082 / +5.0% 0.59 / 0.61 / -3.7%
random-access/feature-vectors/uniform/parquet-cached 136263148 / 131444674 / +3.7% 136554444 / 131410339 / +3.9% 1.00 / 1.00 / -0.2%
random-access/feature-vectors/uniform/parquet-reopen 134915942 / 131533008 / +2.6% 194550431 / 183409316 / +6.1% 0.69 / 0.72 / -3.3%
random-access/nested-lists/correlated/parquet-cached 4617452 / 4541310 / +1.7% 4676669 / 4562315 / +2.5% 0.99 / 1.00 / -0.8%
random-access/nested-lists/correlated/parquet-reopen 4763451 / 4607986 / +3.4% 11455431 / 10061734 / +13.9% 🔴 0.42 / 0.46 / -9.2%
random-access/nested-lists/uniform/parquet-cached 37356482 / 40126231 / -6.9% 37345773 / 40256058 / -7.2% 1.00 / 1.00 / +0.4%
random-access/nested-lists/uniform/parquet-reopen 37525123 / 37116322 / +1.1% 60957499 / 51400078 / +18.6% 🔴 0.62 / 0.72 / -14.8%
random-access/nested-structs/correlated/parquet-cached 9011816 / 9008864 / +0.0% 9021193 / 9008288 / +0.1% 1.00 / 1.00 / -0.1%
random-access/nested-structs/correlated/parquet-reopen 9292398 / 9105971 / +2.0% 22017919 / 20847595 / +5.6% 0.42 / 0.44 / -3.4%
random-access/nested-structs/uniform/parquet-cached 36667118 / 36773362 / -0.3% 36710839 / 36944371 / -0.6% 1.00 / 1.00 / +0.3%
random-access/nested-structs/uniform/parquet-reopen 36776932 / 36752645 / +0.1% 45298766 / 41666473 / +8.7% 0.81 / 0.88 / -8.0%
random-access/taxi/correlated/parquet-cached 23719659 / 23310706 / +1.8% 23650947 / 23365919 / +1.2% 1.00 / 1.00 / +0.5%
random-access/taxi/correlated/parquet-reopen 23924524 / 23704938 / +0.9% 28496318 / 25284168 / +12.7% 🔴 0.84 / 0.94 / -10.5%
random-access/taxi/parquet-cached 16883216 / 16481702 / +2.4% 16933102 / 16487371 / +2.7% 1.00 / 1.00 / -0.3%
random-access/taxi/parquet-reopen 16809261 / 16758385 / +0.3% 22878187 / 21674615 / +5.6% 0.73 / 0.77 / -5.0%
random-access/taxi/uniform/parquet-cached 37726408 / 37405826 / +0.9% 37876176 / 37222967 / +1.8% 1.00 / 1.00 / -0.9%
random-access/taxi/uniform/parquet-reopen 37798708 / 37453725 / +0.9% 40893430 / 39319729 / +4.0% 0.92 / 0.95 / -3.0%
random-access / lance / ns (1.005x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
random-access/feature-vectors/correlated/lance-cached 150719 / 148878 / +1.2% 146990 / 148654 / -1.1% 1.03 / 1.00 / +2.4%
random-access/feature-vectors/correlated/lance-reopen 939938.5 / 929724 / +1.1% 6869400 / 6513966 / +5.5% 0.14 / 0.14 / -4.1%
random-access/feature-vectors/uniform/lance-cached 988804 / 974537 / +1.5% 991569 / 968942 / +2.3% 1.00 / 1.01 / -0.9%
random-access/feature-vectors/uniform/lance-reopen 1740885 / 1739973 / +0.1% 9452229 / 10394055 / -9.1% 0.18 / 0.17 / +10.0%
random-access/nested-lists/correlated/lance-cached 111216 / 110363 / +0.8% 117039 / 102603 / +14.1% 🔴 0.95 / 1.08 / -11.7%
random-access/nested-lists/correlated/lance-reopen 430134 / 414603.5 / +3.7% 6037830 / 5356824 / +12.7% 🔴 0.07 / 0.08 / -8.0%
random-access/nested-lists/uniform/lance-cached 809100 / 823992 / -1.8% 803857 / 811116 / -0.9% 1.01 / 1.02 / -0.9%
random-access/nested-lists/uniform/lance-reopen 1326269 / 1317005 / +0.7% 9391172 / 9919327 / -5.3% 0.14 / 0.13 / +6.4%
random-access/nested-structs/correlated/lance-cached 210735 / 208854 / +0.9% 209365 / 206631 / +1.3% 1.01 / 1.01 / -0.4%
random-access/nested-structs/correlated/lance-reopen 485982 / 471948.5 / +3.0% 5961112 / 5327380 / +11.9% 🔴 0.08 / 0.09 / -8.0%
random-access/nested-structs/uniform/lance-cached 2181479 / 2237599 / -2.5% 2145475 / 2257059 / -4.9% 1.02 / 0.99 / +2.6%
random-access/nested-structs/uniform/lance-reopen 2444974 / 2454705 / -0.4% 14983779 / 15828415 / -5.3% 0.16 / 0.16 / +5.2%
random-access/taxi/correlated/lance-cached 618507.5 / 616872 / +0.3% 615470 / 615443 / +0.0% 1.00 / 1.00 / +0.3%
random-access/taxi/correlated/lance-reopen 1604756 / 1596446 / +0.5% 2796508 / 3772993 / -25.9% 🟢 0.57 / 0.42 / +35.6%
random-access/taxi/lance-cached 424151 / 427238 / -0.7% 438789 / 421715 / +4.0% 0.97 / 1.01 / -4.6%
random-access/taxi/lance-reopen 1231900 / 1217668 / +1.2% 7975211 / 8578815 / -7.0% 0.15 / 0.14 / +8.8%
random-access/taxi/uniform/lance-cached 6749720 / 6814754 / -1.0% 6729796 / 6850314 / -1.8% 1.00 / 0.99 / +0.8%
random-access/taxi/uniform/lance-reopen 7877895 / 7797222 / +1.0% 25114237 / 28855869 / -13.0% 🟢 0.31 / 0.27 / +16.1%
random-access / litdata / ns (1.000x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
random-access/feature-vectors/correlated/litdata-cached 726239 / 740510 / -1.9% 734834 / 742064 / -1.0% 0.99 / 1.00 / -1.0%
random-access/feature-vectors/correlated/litdata-reopen 3077867 / 3071051 / +0.2% 3780394 / 3778857 / +0.0% 0.81 / 0.81 / +0.2%
random-access/feature-vectors/uniform/litdata-cached 1121227 / 1101830 / +1.8% 1107340 / 1113495 / -0.6% 1.01 / 0.99 / +2.3%
random-access/feature-vectors/uniform/litdata-reopen 16153329 / 16005438 / +0.9% 32693432 / 31345475 / +4.3% 0.49 / 0.51 / -3.2%
random-access/nested-lists/correlated/litdata-cached 582322 / 576246 / +1.1% 583744 / 594489 / -1.8% 1.00 / 0.97 / +2.9%
random-access/nested-lists/correlated/litdata-reopen 17486713 / 17443986 / +0.2% 25262376 / 25252601 / +0.0% 0.69 / 0.69 / +0.2%
random-access/nested-lists/uniform/litdata-cached 606893 / 610551 / -0.6% 611420 / 610413 / +0.2% 0.99 / 1.00 / -0.8%
random-access/nested-lists/uniform/litdata-reopen 17146695 / 17188866 / -0.2% 25530626 / 25485895 / +0.2% 0.67 / 0.67 / -0.4%
random-access/nested-structs/correlated/litdata-cached 652678 / 652867 / -0.0% 652580 / 653203 / -0.1% 1.00 / 1.00 / +0.1%
random-access/nested-structs/correlated/litdata-reopen 18832181 / 18888657 / -0.3% 21973191 / 22031030 / -0.3% 0.86 / 0.86 / -0.0%
random-access/nested-structs/uniform/litdata-cached 711266 / 705765 / +0.8% 712211 / 711487 / +0.1% 1.00 / 0.99 / +0.7%
random-access/nested-structs/uniform/litdata-reopen 16234588 / 16448113 / -1.3% 24760859 / 24650735 / +0.4% 0.66 / 0.67 / -1.7%
random-access/taxi/correlated/litdata-cached 1142344 / 1148818 / -0.6% 1143117 / 1146438 / -0.3% 1.00 / 1.00 / -0.3%
random-access/taxi/correlated/litdata-reopen 19991708 / 19977238 / +0.1% 29543954 / 29408538 / +0.5% 0.68 / 0.68 / -0.4%
random-access/taxi/litdata-cached 79960 / 78598 / +1.7% 84058 / 80795 / +4.0% 0.95 / 0.97 / -2.2%
random-access/taxi/litdata-reopen 10620898 / 10546015 / +0.7% 14394735 / 14781539 / -2.6% 0.74 / 0.71 / +3.4%
random-access/taxi/uniform/litdata-cached 1291892 / 1291445 / +0.0% 1299416 / 1300325 / -0.1% 0.99 / 0.99 / +0.1%
random-access/taxi/uniform/litdata-reopen 55014687 / 56197474 / -2.1% 83349852 / 83950345 / -0.7% 0.66 / 0.67 / -1.4%

Temporarily undo the 5 s experiment so the PR benchmark measures this branch
at 10 s, to separate run-to-run noise from the effect of the time limit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UeniB9mYWJs2z49XPgvbPi
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
@joseph-isaacs joseph-isaacs added the action/bench-random-access Run only the random-access benchmark on this PR label Nov 4, 2026 — with Claude
@github-actions github-actions Bot removed the action/bench-random-access Run only the random-access benchmark on this PR label Nov 4, 2026
A 10 s control run on this branch moved by the same amount against develop
as the 5 s run, so halving the time limit does not change the results; it
only halves the benchmark step.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UeniB9mYWJs2z49XPgvbPi
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
@joseph-isaacs joseph-isaacs changed the title Speed up random-access benchmark data generation (and trial a 5 s time limit) Halve random-access benchmark CI time: 5 s measurements, parallel and cached data generation Nov 4, 2026
@joseph-isaacs
joseph-isaacs marked this pull request as ready for review November 4, 2026 22:15

joseph-isaacs commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor Author

CI failures on this PR so far, none caused by its diff, which only touches the random-access benchmark script and two benchmark workflows:

  • Python (wheel build) and check-java-publish-build in Publish Dry Runs failed in the mlugg/setup-zig step with ##[error]fetch failed, while downloading Zig and before anything was built. Both passed on re-run.
  • Python CUDA (test) in run 41923639578 never started: the runner could not launch because AWS reported InsufficientInstanceCapacity for g6/g5 GPU instances in the us-east availability zones it tried. Failed job re-run once.

Generated by Claude Code

@robert3005
robert3005 merged commit 6e2f427 into develop Nov 5, 2026
179 of 183 checks passed
@robert3005
robert3005 deleted the ji/cool-hypatia-lsuwfm branch November 5, 2026 00:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants