Skip to content

ci: speed up CI - #113

Merged
amkram merged 2 commits into
mainfrom
ci/speedup
Jul 12, 2026
Merged

ci: speed up CI #113
amkram merged 2 commits into
mainfrom
ci/speedup

Conversation

@amkram

@amkram amkram commented Jul 12, 2026

Copy link
Copy Markdown
Owner

Speeds up CI

amkram added 2 commits July 12, 2026 02:58
- docker: build with buildx + GHA layer cache + ccache on a BuildKit cache
  mount (persisted by buildkit-cache-dance), so the from-source deps (abseil,
  tbb, spdlog, jsoncpp, panman) and unchanged objects come from cache -- only
  changed sources recompile. OPTION_PORTABLE pins the ISA to x86-64-v3 so
  cached objects never SIGILL across heterogeneous runners. (Kept on PRs for
  now to validate cache warming; will restrict to push-only once proven.)
- examples: split the three README demos (single-sample, --meta,
  --filter-and-assign) into separate ctest cases so `ctest -j` parallelizes
  them instead of one ~165s serial test; disjoint outputs make it race-free.
- ctest: run with all cores (portable getconf _NPROCESSORS_ONLN).
The unit suite rebuilt the same k=15/s=8/t=0/l=1 rsv_4K index 4x and reloaded the
725KB panman ~6x -- the dominant per-case cost. Add a lazily-built, shared,
read-only sharedRSVFixture()/sharedRSVIndex() (Boost.Test runs a binary's cases
serially, so one build is safely reused) and point the read-only index/placement
cases at it. The block-inversion case mutates the tree, so it keeps its own build.

- offset / delta / all-metrics / litetree / parallel-seq -> shared index (7 builds -> 3).
- index_parameters_persisted builds its non-default 19/6/3 index over the shared
  tree, skipping a second fixture load.
- zstd_roundtrip_identity: shrink the 5MB incompressible buffer to 1MB.

Local unit suite 46s -> 20s; all 20 cases + e2e + the 3 split example demos pass.
No tests dropped -- the audit found none redundant or unhelpful; this is pure
fixture-sharing, so coverage is unchanged.
@amkram amkram changed the title ci: massively speed up CI (cache docker build, parallelize/trim tests) ci: speed up CI Jul 12, 2026
@amkram
amkram merged commit edf5ee8 into main Jul 12, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant