Graphite performance telemetry
Benchmark Observatory
A fresh absolute latency snapshot of the Rust engine (graphite serve over the 64-graph fixture corpus) for the exact main commit, with the JVM regression gate's paired PR evidence only when its base and candidate match this integration exactly.
Exact main commit
Fresh Rust engine snapshot
Cross-graph Cypher latency of the shipped graphite binary over fixture64: ten global-wide shapes at three selectivities plus the distribution cases, single-threaded, three sequential passes (the first cold). Score is the median pass; the interval is the min–max spread. The aggregate rows are the P50 and P95 across the queries of one pass. Absolute scores and cross-run deltas are informational on hosted runners. Paired blocking decisions live in the evidence section.
| Benchmark | Mode | Score | Interval (min – max) | vs previous main snapshot | Relative scale by unit |
|---|---|---|---|---|---|
rust.fixture64.global-wide-four-properties [selectivity=zero] |
sequential-pass | 0.75500 ms/op | 0.7190 – 89.52 | -1.9% | |
rust.fixture64.global-wide-class-pair [selectivity=zero] |
sequential-pass | 0.46100 ms/op | 0.4400 – 0.8740 | -20.7% | |
rust.fixture64.global-wide-name-pair [selectivity=zero] |
sequential-pass | 0.38000 ms/op | 0.3550 – 0.4300 | -13.8% | |
rust.fixture64.global-wide-caller-class [selectivity=zero] |
sequential-pass | 0.33700 ms/op | 0.3340 – 0.3720 | -25.4% | |
rust.fixture64.global-wide-callee-class [selectivity=zero] |
sequential-pass | 0.31500 ms/op | 0.3040 – 0.3560 | -22.2% | |
rust.fixture64.global-wide-provenance [selectivity=zero] |
sequential-pass | 0.32200 ms/op | 0.3060 – 0.3610 | -26.0% | |
rust.fixture64.global-wide-aliased [selectivity=zero] |
sequential-pass | 0.32100 ms/op | 0.3100 – 0.3800 | -17.7% | |
rust.fixture64.global-wide-parameterized-as-literal [selectivity=zero] |
sequential-pass | 0.30400 ms/op | 0.2980 – 0.3510 | -26.7% | |
rust.fixture64.global-wide-wrapped-case-insensitive [selectivity=zero] |
sequential-pass | 0.34200 ms/op | 0.3000 – 0.3800 | -24.7% | |
rust.fixture64.global-wide-wrapped-case-insensitive-distinct [selectivity=zero] |
sequential-pass | 0.39100 ms/op | 0.3630 – 0.4170 | -19.5% | |
rust.fixture64.global-wide-four-properties [selectivity=targeted] |
sequential-pass | 0.71100 ms/op | 0.6390 – 0.7430 | -10.0% | |
rust.fixture64.global-wide-class-pair [selectivity=targeted] |
sequential-pass | 0.49500 ms/op | 0.4510 – 0.5520 | -31.4% | |
rust.fixture64.global-wide-name-pair [selectivity=targeted] |
sequential-pass | 0.44800 ms/op | 0.4320 – 0.4890 | -33.0% | |
rust.fixture64.global-wide-caller-class [selectivity=targeted] |
sequential-pass | 0.46500 ms/op | 0.4240 – 0.4910 | -21.5% | |
rust.fixture64.global-wide-callee-class [selectivity=targeted] |
sequential-pass | 0.43800 ms/op | 0.4150 – 0.4940 | -28.0% | |
rust.fixture64.global-wide-provenance [selectivity=targeted] |
sequential-pass | 0.43800 ms/op | 0.4380 – 0.5280 | -31.1% | |
rust.fixture64.global-wide-aliased [selectivity=targeted] |
sequential-pass | 0.42600 ms/op | 0.4130 – 0.4610 | -35.6% | |
rust.fixture64.global-wide-parameterized-as-literal [selectivity=targeted] |
sequential-pass | 0.44400 ms/op | 0.4220 – 0.4510 | -25.6% | |
rust.fixture64.global-wide-wrapped-case-insensitive [selectivity=targeted] |
sequential-pass | 0.42300 ms/op | 0.4220 – 0.4530 | -36.1% | |
rust.fixture64.global-wide-wrapped-case-insensitive-distinct [selectivity=targeted] |
sequential-pass | 0.50900 ms/op | 0.5020 – 0.5190 | -26.4% | |
rust.fixture64.global-wide-four-properties [selectivity=dense] |
sequential-pass | 1.2900 ms/op | 1.271 – 1.398 | -27.9% | |
rust.fixture64.global-wide-class-pair [selectivity=dense] |
sequential-pass | 0.97900 ms/op | 0.9780 – 1.077 | -39.6% | |
rust.fixture64.global-wide-name-pair [selectivity=dense] |
sequential-pass | 0.89200 ms/op | 0.8730 – 0.9190 | -41.9% | |
rust.fixture64.global-wide-caller-class [selectivity=dense] |
sequential-pass | 0.85500 ms/op | 0.8390 – 0.8690 | -39.2% | |
rust.fixture64.global-wide-callee-class [selectivity=dense] |
sequential-pass | 0.83000 ms/op | 0.8230 – 0.8460 | -39.9% | |
rust.fixture64.global-wide-provenance [selectivity=dense] |
sequential-pass | 0.89400 ms/op | 0.8560 – 0.9010 | -37.7% | |
rust.fixture64.global-wide-aliased [selectivity=dense] |
sequential-pass | 0.92800 ms/op | 0.8820 – 0.9340 | -38.3% | |
rust.fixture64.global-wide-parameterized-as-literal [selectivity=dense] |
sequential-pass | 0.89300 ms/op | 0.8400 – 0.9190 | -36.9% | |
rust.fixture64.global-wide-wrapped-case-insensitive [selectivity=dense] |
sequential-pass | 0.99400 ms/op | 0.9780 – 1.031 | -37.5% | |
rust.fixture64.global-wide-wrapped-case-insensitive-distinct [selectivity=dense] |
sequential-pass | 3.4170 ms/op | 3.406 – 3.566 | -29.6% | |
rust.fixture64.global-wide-four-properties [case=localized-early] |
sequential-pass | 0.58800 ms/op | 0.5820 – 0.6200 | -23.5% | |
rust.fixture64.global-wide-four-properties [case=localized-middle] |
sequential-pass | 0.73600 ms/op | 0.7280 – 2.310 | -30.0% | |
rust.fixture64.global-wide-four-properties [case=localized-late] |
sequential-pass | 0.78300 ms/op | 0.7790 – 0.8620 | -26.3% | |
rust.fixture64.global-wide-four-properties [case=broad-all-64] |
sequential-pass | 0.95500 ms/op | 0.8890 – 1.022 | -32.7% | |
rust.fixture64.schema-label-histogram [selectivity=schema] |
sequential-pass | 0.80500 ms/op | 0.7970 – 0.8100 | -26.3% | |
rust.fixture64.schema-key-histogram [selectivity=schema] |
sequential-pass | 0.81300 ms/op | 0.8070 – 0.8590 | -39.1% | |
rust.fixture64.schema-relationship-histogram [selectivity=schema] |
sequential-pass | 82.890 ms/op | 82.38 – 92.71 | -31.3% | |
rust.fixture64.aggregate [statistic=p50] |
sequential-pass | 0.62000 ms/op | 0.5820 – 0.7430 | -17.1% | |
rust.fixture64.aggregate [statistic=p95] |
sequential-pass | 3.5660 ms/op | 3.406 – 89.52 | -26.6% |
PR #104 coverage model
Coverage map and known gaps
✅ means no gate-specific gap is identified. ⚠️ means implemented but intentionally incomplete. Uncovered scope does not change this run's verdict.
Semantic correctness
- ⚠️
method-compatibility(advisory: JVM engine)Fixed discovery matrix only; no universal semantic coverage.
Uncovered scope
universal-correctness-manifest · isolated-workload-identity
Latency regression
- ⚠️
rust-latencySequential single-threaded passes on one hosted runner; rows under the 1 ms floor cannot block. - ⚠️
method-levelLow sample count and hosted-runner variance. - ⚠️
budgeted-collection(advisory: JVM engine)Fixed historical baseline; no current-base comparison. - ⚠️
budgeted-mapped-string(advisory: JVM engine)Fixed historical baseline; no current-base comparison. - ✅
wrapped-query-latency(advisory: JVM engine)No gate-specific gap identified. - ✅
graph-routing-pressureNo gate-specific gap identified. - ✅
global-wide-pressureNo gate-specific gap identified.
Uncovered scope
cross-graph-dataflow-latency · storage-load-stage-latency
Throughput and capacity
- ⚠️
cypher-capacity(advisory: JVM engine)One composite point and limited concurrency shapes.
Uncovered scope
sustained-throughput · saturation-capacity · multi-client-capacity
Memory and resources
- ⚠️
explorer(advisory: JVM engine)Four fixture scenarios; no allocation or leak proof. - ⚠️
wrapped-query-resourcesExact point probes only; no long-duration leak or soak proof.
Uncovered scope
allocation-per-operation · memory-leak · disk-and-temporary-space-budget
Scalability
No implemented component gate.
Uncovered scope
graph-build-scaling · corpus-load-scaling · concurrent-user-scaling
Build and persistence lifecycle
- ⚠️
large-corpusThree fixed corpora; stage rows do not provide universal corpus or lifecycle coverage.
Uncovered scope
dedicated-graph-build · dedicated-save-load · persisted-mapped-query · persistence-migration
Paired regression evidence (JVM engine gate)