← all runs

Cohere-10M — 2026-07-12

r8i.4xlarge · peak recall 0.9999 @ 19 QPS
“Exact centroid build branch”

QPS at recall

RecallMeerkatpgvector HNSW (halfvec)Δ vs best competitor
0.901,101455+142%
0.95483268+80%
0.9916647+253%

Latency at recall

Meerkatpgvector HNSW (halfvec)Δ vs best competitor
@ recall 0.90
p500.89 ms2.16 ms-59%
p951.07 ms3.11 ms-65%
p991.22 ms3.75 ms-68%
@ recall 0.95
p502.04 ms3.77 ms-46%
p952.46 ms5.01 ms-51%
p992.78 ms5.86 ms-53%
@ recall 0.99
p505.84 ms21.39 ms-73%
p957.66 ms27.57 ms-72%
p998.61 ms29.85 ms-71%

All values are taken at exactly the stated recall: each configuration's own sweep is log-interpolated between its two surrounding measured points (measured values are used verbatim on an exact hit) and the best configuration at that recall is shown — values are never interpolated across different configurations. “—” means no single sweep spans that recall; nothing is extrapolated. Recall is distance-based (ann-benchmarks, tie-aware). Insert/update/delete workloads are not measured.

Interpolated on config — Meerkat @0.90: mkt-n40000-cctrue-fs16-soar-cfs-eps035 · pgvector HNSW (halfvec) @0.90: hnsw-m24-halfvec · Meerkat @0.95: mkt-n40000-cctrue-fs16-soar-cfs-eps035 · pgvector HNSW (halfvec) @0.95: hnsw-m24-halfvec · Meerkat @0.99: mkt-n24000-cctrue-fs16-soar-cfs-eps035 · pgvector HNSW (halfvec) @0.99: hnsw-m24-halfvec

Build comparison

Meerkatpgvector HNSW (halfvec)Δ vs best competitor
Build time638 s5045 s-87%
Index size2.5 GB19.1 GB-87%

Build stats are for the configuration backing each column's best operating point: Meerkat = mkt-n24000-cctrue-fs16-soar-cfs-eps035, prewarmed · pgvector HNSW (halfvec) = hnsw-m24-halfvec, prewarmed.

Plots

Pareto svg  ·  Distance-recall svg  ·  Per-config svg  ·  Build times svg  ·  Index sizes svg
paretodistance-recallbuild-timesbuild-sizes

Host

Instance typer8i.4xlarge
Hostnameip-172-31-74-126
CPUIntel(R) Xeon(R) 6975P-C (16 vCPU)
Memory124 GB
OSUbuntu 26.04 LTS
Kernel7.0.0-1008-aws

Versions

rekall0.1.0 (8b64f86 / main)
PostgreSQLPostgreSQL 18.4 (Ubuntu 18.4-1.pgdg26.04+1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 15.2.0-16ubuntu1) 15.2.0, 64-bit
meerkat0.1.0 (508fcba)
pg_prewarm1.2
vector0.8.5

Search

k10
runs3
warmup500
num_queries10000
S3 archives3://rekall-bench/runs/cohere-10m/2026-07-12/r8i.4xlarge-165948/

Index builds

IndexTypeBuild timeSizeWorkers
hnsw-m24-halfvecpgvector-hnsw5045.4s19.1 GB8
mkt-n24000-cctrue-fs16-soar-cfs-eps025meerkat645.6s2.5 GB8
mkt-n24000-cctrue-fs16-soar-cfs-eps035meerkat637.6s2.5 GB8
mkt-n40000-cctrue-fs16-soar-cfs-eps015meerkat1127.9s2.4 GB8
mkt-n40000-cctrue-fs16-soar-cfs-eps025meerkat1157.1s2.6 GB8
mkt-n40000-cctrue-fs16-soar-cfs-eps035meerkat1135.1s2.6 GB8
Index parameters
hnsw-m24-halfvec: {"ef_construction":200,"encoding":"halfvec","m":24}
mkt-n24000-cctrue-fs16-soar-cfs-eps025: {"boundary_epsilon":0.25,"centroid_compression":true,"centroid_fastscan":true,"fan_out":null,"fastscan":true,"fastscan_bits":null,"nlist":24000,"rerank_vectors":null,"soar_lambda":1.0}
mkt-n24000-cctrue-fs16-soar-cfs-eps035: {"boundary_epsilon":0.35,"centroid_compression":true,"centroid_fastscan":true,"fan_out":null,"fastscan":true,"fastscan_bits":null,"nlist":24000,"rerank_vectors":null,"soar_lambda":1.0}
mkt-n40000-cctrue-fs16-soar-cfs-eps015: {"boundary_epsilon":0.15,"centroid_compression":true,"centroid_fastscan":true,"fan_out":null,"fastscan":true,"fastscan_bits":null,"nlist":40000,"rerank_vectors":null,"soar_lambda":1.0}
mkt-n40000-cctrue-fs16-soar-cfs-eps025: {"boundary_epsilon":0.25,"centroid_compression":true,"centroid_fastscan":true,"fan_out":null,"fastscan":true,"fastscan_bits":null,"nlist":40000,"rerank_vectors":null,"soar_lambda":1.0}
mkt-n40000-cctrue-fs16-soar-cfs-eps035: {"boundary_epsilon":0.35,"centroid_compression":true,"centroid_fastscan":true,"fan_out":null,"fastscan":true,"fastscan_bits":null,"nlist":40000,"rerank_vectors":null,"soar_lambda":1.0}
PostgreSQL settings
effective_cache_size = 96 GB
effective_io_concurrency = 256
huge_pages = try
maintenance_work_mem = 51 GB
max_connections = 100
max_parallel_maintenance_workers = 8
max_parallel_workers = 16
random_page_cost = 1.1
shared_buffers = 32 GB
wal_level = replica
work_mem = 1 GB