Record actual 100k lexical index performance on Windows CPU

This commit is contained in:
karl committed 2026-10-13 13:51:21 +02:00
1 parent 59908adfa6
commit 6e7616b6d3
1 file changed
+34 -1
+34 -1
View File
@@ -1,6 +1,7 @@
# Large-index lexical performance protocol # Large-index lexical performance protocol
Status: **1,000-record smoke executed; large run deferred**. No production Status: **1,000-record smoke and 100,000-record intermediate run executed;
million-record run deferred**. No production
release gate is passed by this document. release gate is passed by this document.
`tools/scale-eval` uses the actual shared Rust `SearchIndex` engine, with no `tools/scale-eval` uses the actual shared Rust `SearchIndex` engine, with no
@@ -119,3 +120,35 @@ tests passed in normal and optimized Python modes; formatting and strict
release all-target Clippy passed. A subsequent Clippy-only parity-expression release all-target Clippy passed. A subsequent Clippy-only parity-expression
cleanup did not change the recorded smoke executable. The million-record run, cleanup did not change the recorded smoke executable. The million-record run,
representative libraries and UI/semantic timings remain open. representative libraries and UI/semantic timings remain open.
## Windows VM intermediate scale, 2026-10-13
Actual release diagnostic at source `59908ad`, clean worktree, used 100,000
file records, 10,000 short text documents and 30 requests per case per mode.
All assertions and integrity checks passed. Report:
`.searchi/qa/scale-100k.json`, SHA-256
`25a300f4912d33c07963eb712a9214879c326e8c1a16eeca130855798c561b71`.
Executable SHA-256:
`1c3a8774195ff13e2ffcbb4586446d1de68e2ac927452fd8c004ca4e7d09fd82`.
Dependency lock is unchanged from the smoke. Rust 1.99.0, LLVM 23.1.1,
Windows x64 MSVC; Q35 VM exposes Ryzen 7 7800X3D and eight logical CPUs,
17,109,004,288 bytes RAM. Storage/power configuration was not independently
measured. The installed desktop and its query worker remained running; no
benchmark-owned inference was launched. Background activity was not controlled.
| Case | Basic warm p95 ms | Debug warm p95 ms |
| --- | ---: | ---: |
| Exact name | 1.2085 | 1.4841 |
| Unique keyword | 0.7019 | 1.1082 |
| Common keyword | 9.9522 | 9.7389 |
| Common filename | 0.6121 | 0.7390 |
| Strict combined filters | 6.9529 | 7.2662 |
| Absent query | 0.5178 | 0.8753 |
Seed insertion took 28,224.5 ms and produced a 110,481,408-byte database.
Reader opening took 3.83 ms; first unprepared input 78.02 ms; production prewarm
283.56 ms. Reopening took 3.99 ms without flushing storage caches. A live
process observation reported 15,540,224-byte peak working set at that moment;
it is not a complete lifetime peak-memory measurement. This intermediate
synthetic result does not close the million-record, real-library, concurrent
indexing, semantic or UI gates and does not alter product ranking.