Skip to content

Milestone 0.13 performance report

Status: complete Milestone: 0.13 Depends on: 0.12 (complete) Decision: ADR-029

Summary

0.13 authorizes a suite-wide faster-than-Redland claim under ADR-029: Linux x86-64, macOS Apple Silicon, and Windows x86-64 each passed three independent corrected-runner cells against the frozen strict suite (compatibility/performance/0.13-suite.json). Thresholds are throughput median ≥ 1.05 with CI lower > 1.0, latency median ≤ 0.95 with CI upper < 1.0, 100 paired AB/BA samples, and RSS budgets 1.25.

Qualifying CI run: 0.13 Faster-than-Redland Qualification 30973969324 on tip a50ee5b25eb9daa56b0cf1d155856e1c312b35fb. python3 scripts/check-0.13-release.py is green on the committed nine-cell bundle under compatibility/qualification/performance/0.13/.

ADR-028 remains the closed 0.12 competitive-parity record; this milestone does not reopen it.

Suite-wide worst-run medians

For each host, the table shows the least favorable of the three independent run medians (minimum throughput ratio; maximum latency ratio). Higher is better for throughput; lower is better for ASK latency. Every cell still cleared the ADR-029 gate.

Case Linux macOS Windows
Insert 1K 3.273× 2.915× 2.809×
Insert 10K 40.152× 25.298× 32.678×
Scan 10K 1.629× 2.248× 2.018×
Parse Turtle 1K 3.692× 5.148× 3.074×
Parse Turtle 10K 35.636× 28.928× 31.645×
Serialize N-Quads 10K 7.096× 6.348× 9.738×
ASK latency 0.314× 0.286× 0.216×
SELECT 10K 1.564× 2.518× 2.039×
CONSTRUCT 10K 2.715× 5.462× 4.009×
100K model-size calls 1.332× 1.228× 1.104×

Scope

  • Surface: public C API (oxiland-capi librdf-compat) versus system Redland librdf 1.0.17.
  • Protocol: corrected paired driver (perf_bench_0_13.c / scripts/run-0.13-performance.py), production/release compile, library-path isolation so Redland processes do not load Oxiland’s compatibility library.
  • Claim class: suite-wide faster-than-Redland (ADR-029). Host-scoped local tables in the performance guide remain separately scoped when cited alone.

Reproduce

python3 scripts/check-0.13-release.py
# or re-collect one cell:
python3 scripts/run-0.13-performance.py --run-index 1

Re-run the full matrix with .github/workflows/qualify-0.13.yml (workflow_dispatch or pushes to 0.13* / milestone-0.13*).