Skip to content

Latest commit

 

History

History
369 lines (323 loc) · 22 KB

File metadata and controls

369 lines (323 loc) · 22 KB

ReperioNet benchmark results

Generated by benchmarks/run-matrix.sh 100000 10 on 2026-06-07 12:54 UTC.

Environment

  • CPU: Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz (8 cores, 3597.912 MHz)
  • Memory: 31Gi total
  • OS: Linux 6.8.0-101-generic
  • .NET: 8.0.127
  • Documents per run: 100000 email-like texts (en/de/fr 5:3:2, ~860 bytes average)

Device classes are simulated via CPU affinity (taskset); per-core clock speed and storage speed cannot be throttled from user space, so phone-class numbers are optimistic — they model reduced parallelism, not slower silicon.

Profiles: full = trigram + stemming + phonetic + stored content; no-trigram drops substring recall; compact additionally stores no content copy (no snippets); smallest additionally drops phonetic codes and removes stop words from the stem stream.

Multi-token queries default to all-terms (AND) semantics with an automatic any-term fallback when fewer than Limit candidates match (SearchQueryOptions.TermMatch); the latency battery shows both modes side by side. The gain grows with term selectivity — this corpus's tiny synthetic vocabulary makes every term pathologically common, so the all-terms numbers here are a lower bound.

Summary

run profile cores index docs/s optimize content db size db/content needle p50 common-term p50 concurrent qps add peak mem smoke
desktop / full full 8 2,956 4.3 s 81.8 MiB 357.4 MiB 4.37x 5.5 ms 180.4 ms 21.0 1.1 ms 285 MiB pass
desktop / no-trigram no-trigram 8 6,410 1.1 s 81.8 MiB 166.9 MiB 2.04x 0.6 ms 76.0 ms 45.1 0.7 ms 282 MiB pass
desktop / compact compact 8 6,443 1.0 s 81.8 MiB 166.9 MiB 2.04x 0.4 ms 79.8 ms 44.5 0.5 ms 310 MiB pass
desktop / smallest smallest 8 7,655 0.8 s 81.8 MiB 150.6 MiB 1.84x 0.4 ms 77.6 ms 55.1 0.5 ms 274 MiB pass
fast-phone (4 cores) / full full 4 3,158 4.3 s 81.8 MiB 357.4 MiB 4.37x 5.2 ms 173.0 ms 16.8 0.7 ms 311 MiB pass
fast-phone (4 cores) / no-trigram no-trigram 4 6,677 1.0 s 81.8 MiB 166.9 MiB 2.04x 0.3 ms 76.6 ms 31.7 0.5 ms 289 MiB pass
fast-phone (4 cores) / compact compact 4 6,674 1.0 s 81.8 MiB 166.9 MiB 2.04x 0.4 ms 71.8 ms 31.4 0.6 ms 278 MiB pass
fast-phone (4 cores) / smallest smallest 4 8,441 0.6 s 81.8 MiB 150.6 MiB 1.84x 0.4 ms 78.0 ms 38.1 0.5 ms 216 MiB pass
slow-phone (2 cores) / full full 2 3,320 4.4 s 81.8 MiB 357.4 MiB 4.37x 5.5 ms 169.4 ms 11.8 0.8 ms 294 MiB pass
slow-phone (2 cores) / no-trigram no-trigram 2 7,105 1.0 s 81.8 MiB 166.9 MiB 2.04x 0.6 ms 74.1 ms 20.4 0.5 ms 229 MiB pass
slow-phone (2 cores) / compact compact 2 7,112 1.0 s 81.8 MiB 166.9 MiB 2.04x 0.6 ms 73.2 ms 20.7 0.5 ms 267 MiB pass
slow-phone (2 cores) / smallest smallest 2 9,209 0.7 s 81.8 MiB 150.6 MiB 1.84x 0.4 ms 82.0 ms 23.7 0.5 ms 232 MiB pass

Per-run details

desktop / full

  • profile: full (trigram=True, storeContent=True, phonetic=True, removeStopWords=False)
  • usable cores: 8 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 2,956 docs/s, OptimizeAsync 4.3 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 374,808,576 bytes (357.4 MiB) — ratio 4.37x
  • peak process memory: 285 MiB
  • concurrent throughput: 21.0 queries/s (8 workers) — AddAsync 1.1 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 11.6 ms 5.5 ms 9.3 ms 9.3 ms
needle (uid; phonetic collides) 50 82.8 ms 82.2 ms 116.0 ms 116.0 ms
common term (~50% of docs) 50 160.0 ms 180.4 ms 226.2 ms 226.2 ms
common term, fuzzy off 50 174.7 ms 161.1 ms 211.1 ms 211.1 ms
common term + snippets 50 204.4 ms 175.5 ms 215.5 ms 215.5 ms
common term, page offset 100 50 182.9 ms 175.0 ms 204.1 ms 204.1 ms
de stemmed inflection 50 171.8 ms 183.1 ms 212.9 ms 212.9 ms
de phonetic variant 1 0.6 ms 0.3 ms 0.3 ms 0.3 ms
multi-token, all terms (default) 50 164.2 ms 177.7 ms 202.8 ms 202.8 ms
multi-token, any term 50 239.8 ms 237.8 ms 264.4 ms 264.4 ms
multi-token with typo (fallback) 50 87.9 ms 92.7 ms 115.5 ms 115.5 ms
short query (prefix aid) 50 293.5 ms 285.0 ms 355.1 ms 355.1 ms
no-match term 0 1.2 ms 0.2 ms 0.3 ms 0.3 ms

desktop / no-trigram

  • profile: no-trigram (trigram=False, storeContent=True, phonetic=True, removeStopWords=False)
  • usable cores: 8 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 6,410 docs/s, OptimizeAsync 1.1 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 175,009,792 bytes (166.9 MiB) — ratio 2.04x
  • peak process memory: 282 MiB
  • concurrent throughput: 45.1 queries/s (8 workers) — AddAsync 0.7 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 4.2 ms 0.6 ms 2.7 ms 2.7 ms
needle (uid; phonetic collides) 50 80.7 ms 84.5 ms 132.7 ms 132.7 ms
common term (~50% of docs) 50 74.3 ms 76.0 ms 106.3 ms 106.3 ms
common term, fuzzy off 50 73.8 ms 67.0 ms 75.1 ms 75.1 ms
common term + snippets 50 73.0 ms 78.6 ms 104.2 ms 104.2 ms
common term, page offset 100 50 74.0 ms 76.4 ms 117.1 ms 117.1 ms
de stemmed inflection 50 53.8 ms 58.9 ms 75.0 ms 75.0 ms
de phonetic variant 1 0.5 ms 0.2 ms 0.3 ms 0.3 ms
multi-token, all terms (default) 50 78.9 ms 78.5 ms 91.7 ms 91.7 ms
multi-token, any term 50 143.3 ms 146.7 ms 158.2 ms 158.2 ms
multi-token with typo (fallback) 50 95.6 ms 87.4 ms 149.8 ms 149.8 ms
short query (prefix aid) 50 297.7 ms 281.5 ms 314.5 ms 314.5 ms
no-match term 0 0.8 ms 0.1 ms 0.3 ms 0.3 ms

desktop / compact

  • profile: compact (trigram=False, storeContent=False, phonetic=True, removeStopWords=False)
  • usable cores: 8 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 6,443 docs/s, OptimizeAsync 1.0 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 175,009,792 bytes (166.9 MiB) — ratio 2.04x
  • peak process memory: 310 MiB
  • concurrent throughput: 44.5 queries/s (8 workers) — AddAsync 0.5 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 2.9 ms 0.4 ms 2.0 ms 2.0 ms
needle (uid; phonetic collides) 50 74.4 ms 75.2 ms 98.8 ms 98.8 ms
common term (~50% of docs) 50 78.4 ms 79.8 ms 93.6 ms 93.6 ms
common term, fuzzy off 50 73.9 ms 65.7 ms 99.0 ms 99.0 ms
common term + snippets 50 117.0 ms 78.2 ms 92.4 ms 92.4 ms
common term, page offset 100 50 97.9 ms 84.0 ms 113.7 ms 113.7 ms
de stemmed inflection 50 59.3 ms 60.0 ms 75.8 ms 75.8 ms
de phonetic variant 1 0.5 ms 0.2 ms 0.2 ms 0.2 ms
multi-token, all terms (default) 50 76.9 ms 77.7 ms 97.7 ms 97.7 ms
multi-token, any term 50 134.0 ms 140.3 ms 149.2 ms 149.2 ms
multi-token with typo (fallback) 50 83.2 ms 98.3 ms 139.4 ms 139.4 ms
short query (prefix aid) 50 324.5 ms 299.6 ms 329.0 ms 329.0 ms
no-match term 0 0.9 ms 0.1 ms 0.2 ms 0.2 ms

desktop / smallest

  • profile: smallest (trigram=False, storeContent=False, phonetic=False, removeStopWords=True)
  • usable cores: 8 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 7,655 docs/s, OptimizeAsync 0.8 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 157,958,144 bytes (150.6 MiB) — ratio 1.84x
  • peak process memory: 274 MiB
  • concurrent throughput: 55.1 queries/s (8 workers) — AddAsync 0.5 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 3.1 ms 0.4 ms 3.6 ms 3.6 ms
needle (uid; phonetic collides) 1 0.8 ms 0.4 ms 0.4 ms 0.4 ms
common term (~50% of docs) 50 106.2 ms 77.6 ms 118.5 ms 118.5 ms
common term, fuzzy off 50 51.7 ms 53.0 ms 63.8 ms 63.8 ms
common term + snippets 50 65.3 ms 65.3 ms 73.2 ms 73.2 ms
common term, page offset 100 50 85.9 ms 67.3 ms 82.9 ms 82.9 ms
de stemmed inflection 50 59.4 ms 57.3 ms 72.3 ms 72.3 ms
de phonetic variant 0 0.8 ms 0.1 ms 0.1 ms 0.1 ms
multi-token, all terms (default) 50 79.8 ms 94.4 ms 128.4 ms 128.4 ms
multi-token, any term 50 108.7 ms 126.8 ms 155.7 ms 155.7 ms
multi-token with typo (fallback) 50 74.0 ms 68.6 ms 89.5 ms 89.5 ms
short query (prefix aid) 50 301.6 ms 281.7 ms 305.2 ms 305.2 ms
no-match term 0 0.3 ms 0.1 ms 0.1 ms 0.1 ms

fast-phone (4 cores) / full

  • profile: full (trigram=True, storeContent=True, phonetic=True, removeStopWords=False)
  • usable cores: 4 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 3,158 docs/s, OptimizeAsync 4.3 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 374,808,576 bytes (357.4 MiB) — ratio 4.37x
  • peak process memory: 311 MiB
  • concurrent throughput: 16.8 queries/s (8 workers) — AddAsync 0.7 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 10.1 ms 5.2 ms 8.5 ms 8.5 ms
needle (uid; phonetic collides) 50 76.4 ms 80.9 ms 132.8 ms 132.8 ms
common term (~50% of docs) 50 169.4 ms 173.0 ms 287.7 ms 287.7 ms
common term, fuzzy off 50 164.6 ms 166.8 ms 203.2 ms 203.2 ms
common term + snippets 50 176.1 ms 178.6 ms 193.3 ms 193.3 ms
common term, page offset 100 50 162.8 ms 165.3 ms 192.6 ms 192.6 ms
de stemmed inflection 50 173.8 ms 167.8 ms 191.1 ms 191.1 ms
de phonetic variant 1 0.6 ms 0.2 ms 0.3 ms 0.3 ms
multi-token, all terms (default) 50 165.0 ms 168.0 ms 204.9 ms 204.9 ms
multi-token, any term 50 230.9 ms 232.0 ms 283.1 ms 283.1 ms
multi-token with typo (fallback) 50 87.4 ms 92.6 ms 135.7 ms 135.7 ms
short query (prefix aid) 50 287.6 ms 286.8 ms 324.1 ms 324.1 ms
no-match term 0 0.8 ms 0.1 ms 0.2 ms 0.2 ms

fast-phone (4 cores) / no-trigram

  • profile: no-trigram (trigram=False, storeContent=True, phonetic=True, removeStopWords=False)
  • usable cores: 4 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 6,677 docs/s, OptimizeAsync 1.0 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 175,009,792 bytes (166.9 MiB) — ratio 2.04x
  • peak process memory: 289 MiB
  • concurrent throughput: 31.7 queries/s (8 workers) — AddAsync 0.5 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 3.0 ms 0.3 ms 1.9 ms 1.9 ms
needle (uid; phonetic collides) 50 73.3 ms 92.6 ms 115.0 ms 115.0 ms
common term (~50% of docs) 50 78.1 ms 76.6 ms 105.4 ms 105.4 ms
common term, fuzzy off 50 75.4 ms 62.0 ms 74.5 ms 74.5 ms
common term + snippets 50 70.3 ms 76.2 ms 108.4 ms 108.4 ms
common term, page offset 100 50 92.7 ms 75.2 ms 83.7 ms 83.7 ms
de stemmed inflection 50 57.2 ms 54.5 ms 82.9 ms 82.9 ms
de phonetic variant 1 0.5 ms 0.2 ms 0.2 ms 0.2 ms
multi-token, all terms (default) 50 85.1 ms 78.7 ms 90.0 ms 90.0 ms
multi-token, any term 50 141.8 ms 145.4 ms 200.1 ms 200.1 ms
multi-token with typo (fallback) 50 90.3 ms 90.8 ms 107.7 ms 107.7 ms
short query (prefix aid) 50 309.9 ms 280.0 ms 384.1 ms 384.1 ms
no-match term 0 0.8 ms 0.2 ms 0.3 ms 0.3 ms

fast-phone (4 cores) / compact

  • profile: compact (trigram=False, storeContent=False, phonetic=True, removeStopWords=False)
  • usable cores: 4 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 6,674 docs/s, OptimizeAsync 1.0 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 175,009,792 bytes (166.9 MiB) — ratio 2.04x
  • peak process memory: 278 MiB
  • concurrent throughput: 31.4 queries/s (8 workers) — AddAsync 0.6 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 2.9 ms 0.4 ms 1.9 ms 1.9 ms
needle (uid; phonetic collides) 50 70.7 ms 86.3 ms 128.9 ms 128.9 ms
common term (~50% of docs) 50 81.6 ms 71.8 ms 102.2 ms 102.2 ms
common term, fuzzy off 50 69.5 ms 62.8 ms 82.4 ms 82.4 ms
common term + snippets 50 69.3 ms 74.1 ms 81.9 ms 81.9 ms
common term, page offset 100 50 94.6 ms 80.3 ms 89.8 ms 89.8 ms
de stemmed inflection 50 55.3 ms 58.8 ms 63.4 ms 63.4 ms
de phonetic variant 1 0.5 ms 0.3 ms 0.3 ms 0.3 ms
multi-token, all terms (default) 50 94.0 ms 81.5 ms 102.3 ms 102.3 ms
multi-token, any term 50 154.4 ms 156.0 ms 187.4 ms 187.4 ms
multi-token with typo (fallback) 50 92.4 ms 92.9 ms 120.3 ms 120.3 ms
short query (prefix aid) 50 293.0 ms 297.7 ms 395.5 ms 395.5 ms
no-match term 0 0.9 ms 0.1 ms 0.1 ms 0.1 ms

fast-phone (4 cores) / smallest

  • profile: smallest (trigram=False, storeContent=False, phonetic=False, removeStopWords=True)
  • usable cores: 4 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 8,441 docs/s, OptimizeAsync 0.6 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 157,958,144 bytes (150.6 MiB) — ratio 1.84x
  • peak process memory: 216 MiB
  • concurrent throughput: 38.1 queries/s (8 workers) — AddAsync 0.5 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 4.2 ms 0.4 ms 3.6 ms 3.6 ms
needle (uid; phonetic collides) 1 0.9 ms 0.4 ms 0.5 ms 0.5 ms
common term (~50% of docs) 50 84.9 ms 78.0 ms 114.4 ms 114.4 ms
common term, fuzzy off 50 58.9 ms 56.4 ms 69.1 ms 69.1 ms
common term + snippets 50 63.7 ms 69.7 ms 89.4 ms 89.4 ms
common term, page offset 100 50 67.7 ms 67.4 ms 84.7 ms 84.7 ms
de stemmed inflection 50 65.6 ms 60.8 ms 69.1 ms 69.1 ms
de phonetic variant 0 0.8 ms 0.1 ms 0.1 ms 0.1 ms
multi-token, all terms (default) 50 83.1 ms 79.4 ms 98.5 ms 98.5 ms
multi-token, any term 50 114.9 ms 114.9 ms 124.3 ms 124.3 ms
multi-token with typo (fallback) 50 70.1 ms 75.2 ms 92.1 ms 92.1 ms
short query (prefix aid) 50 280.1 ms 273.8 ms 292.3 ms 292.3 ms
no-match term 0 0.4 ms 0.1 ms 0.1 ms 0.1 ms

slow-phone (2 cores) / full

  • profile: full (trigram=True, storeContent=True, phonetic=True, removeStopWords=False)
  • usable cores: 2 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 3,320 docs/s, OptimizeAsync 4.4 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 374,808,576 bytes (357.4 MiB) — ratio 4.37x
  • peak process memory: 294 MiB
  • concurrent throughput: 11.8 queries/s (8 workers) — AddAsync 0.8 ms, RemoveAsync 0.3 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 8.7 ms 5.5 ms 7.4 ms 7.4 ms
needle (uid; phonetic collides) 50 79.2 ms 77.5 ms 122.1 ms 122.1 ms
common term (~50% of docs) 50 171.7 ms 169.4 ms 204.1 ms 204.1 ms
common term, fuzzy off 50 148.7 ms 158.1 ms 208.9 ms 208.9 ms
common term + snippets 50 180.3 ms 170.6 ms 196.5 ms 196.5 ms
common term, page offset 100 50 173.3 ms 179.0 ms 197.1 ms 197.1 ms
de stemmed inflection 50 180.3 ms 184.0 ms 217.1 ms 217.1 ms
de phonetic variant 1 0.6 ms 0.3 ms 0.3 ms 0.3 ms
multi-token, all terms (default) 50 168.7 ms 179.3 ms 218.5 ms 218.5 ms
multi-token, any term 50 228.5 ms 231.1 ms 268.8 ms 268.8 ms
multi-token with typo (fallback) 50 96.5 ms 91.5 ms 112.0 ms 112.0 ms
short query (prefix aid) 50 302.6 ms 286.9 ms 335.9 ms 335.9 ms
no-match term 0 0.8 ms 0.1 ms 0.2 ms 0.2 ms

slow-phone (2 cores) / no-trigram

  • profile: no-trigram (trigram=False, storeContent=True, phonetic=True, removeStopWords=False)
  • usable cores: 2 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 7,105 docs/s, OptimizeAsync 1.0 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 175,009,792 bytes (166.9 MiB) — ratio 2.04x
  • peak process memory: 229 MiB
  • concurrent throughput: 20.4 queries/s (8 workers) — AddAsync 0.5 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 4.3 ms 0.6 ms 2.6 ms 2.6 ms
needle (uid; phonetic collides) 50 99.8 ms 84.5 ms 153.1 ms 153.1 ms
common term (~50% of docs) 50 75.3 ms 74.1 ms 99.9 ms 99.9 ms
common term, fuzzy off 50 62.9 ms 64.3 ms 72.9 ms 72.9 ms
common term + snippets 50 82.0 ms 73.6 ms 104.0 ms 104.0 ms
common term, page offset 100 50 76.1 ms 74.7 ms 97.0 ms 97.0 ms
de stemmed inflection 50 69.4 ms 57.2 ms 78.2 ms 78.2 ms
de phonetic variant 1 0.5 ms 0.2 ms 0.2 ms 0.2 ms
multi-token, all terms (default) 50 72.4 ms 84.9 ms 96.3 ms 96.3 ms
multi-token, any term 50 176.3 ms 151.6 ms 174.5 ms 174.5 ms
multi-token with typo (fallback) 50 94.7 ms 89.0 ms 105.3 ms 105.3 ms
short query (prefix aid) 50 300.3 ms 285.5 ms 319.3 ms 319.3 ms
no-match term 0 0.7 ms 0.1 ms 0.1 ms 0.1 ms

slow-phone (2 cores) / compact

  • profile: compact (trigram=False, storeContent=False, phonetic=True, removeStopWords=False)
  • usable cores: 2 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 7,112 docs/s, OptimizeAsync 1.0 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 175,009,792 bytes (166.9 MiB) — ratio 2.04x
  • peak process memory: 267 MiB
  • concurrent throughput: 20.7 queries/s (8 workers) — AddAsync 0.5 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 3.8 ms 0.6 ms 2.5 ms 2.5 ms
needle (uid; phonetic collides) 50 109.9 ms 68.5 ms 125.9 ms 125.9 ms
common term (~50% of docs) 50 75.6 ms 73.2 ms 99.9 ms 99.9 ms
common term, fuzzy off 50 58.8 ms 64.2 ms 94.5 ms 94.5 ms
common term + snippets 50 74.7 ms 75.4 ms 88.4 ms 88.4 ms
common term, page offset 100 50 76.6 ms 74.6 ms 88.6 ms 88.6 ms
de stemmed inflection 50 57.5 ms 59.8 ms 76.0 ms 76.0 ms
de phonetic variant 1 0.5 ms 0.2 ms 0.3 ms 0.3 ms
multi-token, all terms (default) 50 78.0 ms 80.1 ms 102.6 ms 102.6 ms
multi-token, any term 50 137.9 ms 144.5 ms 162.4 ms 162.4 ms
multi-token with typo (fallback) 50 90.0 ms 92.1 ms 113.1 ms 113.1 ms
short query (prefix aid) 50 282.3 ms 283.1 ms 310.6 ms 310.6 ms
no-match term 0 0.8 ms 0.1 ms 0.2 ms 0.2 ms

slow-phone (2 cores) / smallest

  • profile: smallest (trigram=False, storeContent=False, phonetic=False, removeStopWords=True)
  • usable cores: 2 (Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz @ 3597.912 MHz)
  • documents: 100,000 (+3 planted), batch size 25,000
  • indexing: 9,209 docs/s, OptimizeAsync 0.7 s
  • raw content: 85,821,349 bytes (81.8 MiB) — database: 157,958,144 bytes (150.6 MiB) — ratio 1.84x
  • peak process memory: 232 MiB
  • concurrent throughput: 23.7 queries/s (8 workers) — AddAsync 0.5 ms, RemoveAsync 0.2 ms
  • smoke checks: pass
pattern hits cold p50 p95 max
needle, phonetic off 1 2.9 ms 0.4 ms 3.8 ms 3.8 ms
needle (uid; phonetic collides) 1 0.8 ms 0.4 ms 0.4 ms 0.4 ms
common term (~50% of docs) 50 84.6 ms 82.0 ms 95.3 ms 95.3 ms
common term, fuzzy off 50 65.3 ms 54.2 ms 83.5 ms 83.5 ms
common term + snippets 50 69.2 ms 66.7 ms 73.3 ms 73.3 ms
common term, page offset 100 50 87.1 ms 66.0 ms 92.2 ms 92.2 ms
de stemmed inflection 50 49.7 ms 52.2 ms 59.7 ms 59.7 ms
de phonetic variant 0 0.7 ms 0.1 ms 0.3 ms 0.3 ms
multi-token, all terms (default) 50 91.7 ms 76.7 ms 100.2 ms 100.2 ms
multi-token, any term 50 109.2 ms 122.1 ms 140.2 ms 140.2 ms
multi-token with typo (fallback) 50 71.5 ms 67.7 ms 86.1 ms 86.1 ms
short query (prefix aid) 50 274.4 ms 270.7 ms 306.2 ms 306.2 ms
no-match term 0 0.4 ms 0.1 ms 0.1 ms 0.1 ms