Latest results
Loading the latest results from the benchmark workflow…
Last hand-checked run
From run 34254363545
on commit f46e7bf (2026-09-08), GitHub-hosted ubuntu-latest. The
README carries the
same table; the per-commit trend is at
dev/bench.
Real corpus: tokio 1.45.0 + Django 5.2
6,237 files, 38.9 MB of text, 134k distinct trigrams, 242k symbol references, 5.9k dependency edges.
| Build | Value |
|---|---|
| Discovery | 130 ms |
| Build (read, trigrams, symbols, imports, merge) | 4.26 s — 1,464 files/s, 9.1 MB/s |
| Resident memory after build | 118 MB (process before build: 8 MB) |
| Index save | 201 ms (21.5 MB on disk) |
| Index load, reconciling | 255 ms |
| Query | p50 | p95 |
|---|---|---|
| text, common word | 0.95 ms | 1.03 ms |
| text, identifier | 1.52 ms | 1.64 ms |
| text, no match | 1 µs | 1 µs |
| text, short (two characters) | 1.40 ms | 1.46 ms |
| text, full ranking | 0.94 ms | 1.04 ms |
| text, path-filtered | 1.02 ms | 1.08 ms |
| regex with literal | 1.37 ms | 1.50 ms |
| regex, case-insensitive | 0.72 ms | 0.80 ms |
| regex, no literal (full scan) | 1.72 ms | 1.91 ms |
| symbol, exact | 3.66 ms | 4.32 ms |
| symbol, prefix | 4.01 ms | 4.35 ms |
| references | 0.67 ms | 1.00 ms |
| incremental: modify one file | 10.1 ms | 14.0 ms |
Synthetic (Criterion), same run
| Benchmark | Corpus | Mean |
|---|---|---|
| text search, common query | 100 files | 0.39 ms |
| text search, rare query | 100 files | 27 µs |
| text search, no match | 100 files | 0.45 µs |
| regex, literal | 100 files | 0.49 ms |
| regex, alternation | 100 files | 0.52 ms |
| regex, no literal | 100 files | 0.71 ms |
| index build | 100 files | 53 ms |
| index save / load | 1,000 files | 7.9 ms / 9.2 ms |
Values are Criterion means; the corpus is generated by
benches/search_benchmark.rs.