← all runs

Cohere-50M — 2026-07-03

r8i.12xlarge · peak recall 0.9919 @ 32 QPS

QPS at recall

RecallMeerkatpgvector HNSW (halfvec)pgvector HNSW (bit)Δ vs best competitor
0.90285291— (min r=0.953)-2%
0.95175145— (min r=0.953)+21%
0.9937— (max r=0.984)— (max r=0.956)—

Latency at recall

Meerkatpgvector HNSW (halfvec)pgvector HNSW (bit)Δ vs best competitor
@ recall 0.90
p503.49 ms3.48 ms—+0%
p954.54 ms4.61 ms—-1%
p995.08 ms5.36 ms—-5%
@ recall 0.95
p505.48 ms7.17 ms—-24%
p957.72 ms8.76 ms—-12%
p999.40 ms9.65 ms—-3%
@ recall 0.99
p5026.02 ms———
p9534.49 ms———
p9941.92 ms———

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-n120000-cctrue-fs16-soar-cfs · pgvector HNSW (halfvec) @0.90: hnsw-m24-halfvec · Meerkat @0.95: mkt-n240000-cctrue-fs16-soar-cfs · pgvector HNSW (halfvec) @0.95: hnsw-m24-halfvec · Meerkat @0.99: mkt-n240000-cctrue-fs16-soar-cfs

Build comparison

Meerkatpgvector HNSW (halfvec)pgvector HNSW (bit)Δ vs best competitor
Build time2535 s13174 s—-81%
Index size12.8 GB95.3 GB—-87%

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

Plots

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

Host

Instance typer8i.12xlarge
Hostnameip-172-31-69-223
CPUIntel(R) Xeon(R) 6975P-C (48 vCPU)
Memory372 GB
OSUbuntu 26.04 LTS
Kernel7.0.0-1008-aws

Versions

rekall0.1.0 (ce00e5f / 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 (8e72dfd)
pg_prewarm1.2
vector0.8.4

Search

k10
runs3
warmup500
num_queries10000
S3 archives3://rekall-bench/runs/cohere-50m/2026-07-03/r8i.12xlarge-163021/

Index builds

IndexTypeBuild timeSizeWorkers
hnsw-m24-bqpgvector-hnsw5433.3s23.2 GB24
hnsw-m24-halfvecpgvector-hnsw13174.2s95.3 GB24
mkt-n120000-cctrue-fs16-soar-cfsmeerkat6743.8s11.9 GB24
mkt-n240000-cctrue-fs16-soar-cfsmeerkat2535.1s12.8 GB24
Index parameters
hnsw-m24-bq: {"ef_construction":200,"encoding":"bit","m":24}
hnsw-m24-halfvec: {"ef_construction":200,"encoding":"halfvec","m":24}
mkt-n120000-cctrue-fs16-soar-cfs: {"boundary_epsilon":0.05,"centroid_compression":true,"centroid_fastscan":true,"fan_out":null,"fastscan":true,"fastscan_bits":null,"nlist":120000,"rerank_vectors":null,"soar_lambda":1.0}
mkt-n240000-cctrue-fs16-soar-cfs: {"boundary_epsilon":0.05,"centroid_compression":true,"centroid_fastscan":true,"fan_out":null,"fastscan":true,"fastscan_bits":null,"nlist":240000,"rerank_vectors":null,"soar_lambda":1.0}
PostgreSQL settings
effective_cache_size = 288 GB
effective_io_concurrency = 256
huge_pages = try
maintenance_work_mem = 153 GB
max_connections = 100
max_parallel_maintenance_workers = 24
max_parallel_workers = 48
random_page_cost = 1.1
shared_buffers = 96 GB
wal_level = replica
work_mem = 1 GB