diff --git a/benchmarks/REPORT.md b/benchmarks/REPORT.md index 938379f..4d6eec3 100644 --- a/benchmarks/REPORT.md +++ b/benchmarks/REPORT.md @@ -1,27 +1,27 @@ # RedBoxDb Performance Dashboard -> Auto-generated on every commit to main. Last updated: 2026-07-26 +> Auto-generated on every commit to main. Last updated: 2026-08-03 -## Latest Results (`9d81807`) +## Latest Results (`ef8e97b`) | Metric | Value | vs Previous | |--------|-------|-------------| -| HNSW QPS (1T) | 23,225 | -31.5% ↓ | -| HNSW QPS (12T) | 59,834 | -31.7% ↓ | -| IVF QPS (1T) | 4,427 | -16.7% ↓ | -| IVF QPS (12T) | 10,058 | -12.7% ↓ | -| HNSW Insert/sec | 1,912 | +12.2% ↑ | -| IVF Insert/sec | 62,217 | -3.6% ↓ | -| Recall@100 | 86.7% | → | +| HNSW QPS (1T) | 34,669 | +49.3% ↑ | +| HNSW QPS (12T) | 107,426 | +79.5% ↑ | +| IVF QPS (1T) | 5,606 | +26.6% ↑ | +| IVF QPS (12T) | 13,346 | +32.7% ↑ | +| HNSW Insert/sec | 1,838 | -3.9% ↓ | +| IVF Insert/sec | 77,431 | +24.5% ↑ | +| Recall@100 | 86.6% | → | ## HNSW 1-NN QPS (1 thread) ```mermaid xychart-beta title "HNSW 1-NN QPS (1 thread)" - x-axis ["0ec05f3", "5366613", "e47eaee", "4f25193", "9d81807"] + x-axis ["0ec05f3", "5366613", "e47eaee", "4f25193", "9d81807", "ef8e97b"] y-axis "QPS" 0 --> 45000 - line [21803, 29297, 38537, 33923, 23225] + line [21803, 29297, 38537, 33923, 23225, 34669] ``` ## HNSW 1-NN QPS (12 threads) @@ -29,9 +29,9 @@ xychart-beta ```mermaid xychart-beta title "HNSW 1-NN QPS (12 threads)" - x-axis ["0ec05f3", "5366613", "e47eaee", "4f25193", "9d81807"] + x-axis ["0ec05f3", "5366613", "e47eaee", "4f25193", "9d81807", "ef8e97b"] y-axis "QPS" 0 --> 126000 - line [76009, 81296, 108905, 87655, 59834] + line [76009, 81296, 108905, 87655, 59834, 107426] ``` ## IVF 1-NN QPS (1 thread) @@ -39,9 +39,9 @@ xychart-beta ```mermaid xychart-beta title "IVF 1-NN QPS (1 thread)" - x-axis ["0ec05f3", "5366613", "e47eaee", "4f25193", "9d81807"] + x-axis ["0ec05f3", "5366613", "e47eaee", "4f25193", "9d81807", "ef8e97b"] y-axis "QPS" 0 --> 7000 - line [3457, 5074, 5151, 5312, 4427] + line [3457, 5074, 5151, 5312, 4427, 5606] ``` ## IVF 1-NN QPS (12 threads) @@ -49,27 +49,28 @@ xychart-beta ```mermaid xychart-beta title "IVF 1-NN QPS (12 threads)" - x-axis ["0ec05f3", "5366613", "e47eaee", "4f25193", "9d81807"] + x-axis ["0ec05f3", "5366613", "e47eaee", "4f25193", "9d81807", "ef8e97b"] y-axis "QPS" 0 --> 21000 - line [18039, 11386, 13485, 11521, 10058] + line [18039, 11386, 13485, 11521, 10058, 13346] ``` ## Quick Trends ``` - HNSW QPS (1T) 23,225 ▁▄█▆▁ - HNSW QPS (12T) 59,834 ▃▄█▅▁ - IVF QPS (1T) 4,427 ▁▇██▅ - IVF QPS (12T) 10,058 █▂▄▂▁ - HNSW Insert/sec 1,912 ▁▆█▆█ - IVF Insert/sec 62,217 ▁▄█▄▃ - Recall@100 86.7% ▁▅█▇▇ + HNSW QPS (1T) 34,669 ▁▄█▆▁▇ + HNSW QPS (12T) 107,426 ▃▄█▅▁█ + IVF QPS (1T) 5,606 ▁▇▇▇▄█ + IVF QPS (12T) 13,346 █▂▄▂▁▄ + HNSW Insert/sec 1,838 ▁▆█▆██ + IVF Insert/sec 77,431 ▁▄█▄▃█ + Recall@100 86.6% ▁▅█▇▇▇ ``` ## Full History | # | Commit | Date | HNSW 1T | HNSW NT | IVF 1T | IVF NT | HNSW Ins | IVF Ins | Recall | |---|--------|------|---------|---------|--------|--------|----------|---------|--------| +| 6 | `ef8e97b` | 2026-08-03 | 34,669 | 107,426 | 5,606 | 13,346 | 1,838 | 77,431 | 86.6% | | 5 | `9d81807` | 2026-07-26 | 23,225 | 59,834 | 4,427 | 10,058 | 1,912 | 62,217 | 86.7% | | 4 | `4f25193` | 2026-07-24 | 33,923 | 87,655 | 5,312 | 11,521 | 1,704 | 64,542 | 86.6% | | 3 | `e47eaee` | 2026-07-23 | 38,537 | 108,905 | 5,151 | 13,485 | 1,873 | 77,904 | 86.9% | diff --git a/benchmarks/data.json b/benchmarks/data.json index 65b8ae1..c33be03 100644 --- a/benchmarks/data.json +++ b/benchmarks/data.json @@ -74,6 +74,21 @@ "threads": 4, "num_vectors": 100000, "dimensions": 128 + }, + { + "commit": "ef8e97b", + "date": "2026-08-03", + "message": "Check recv(1) return on acknowledgment reads (#93) (#150)", + "hnsw_insert_per_sec": 1838, + "hnsw_qps_1t": 34669, + "hnsw_qps_nt": 107426, + "hnsw_recall_100": 0.8662, + "ivf_insert_per_sec": 77431, + "ivf_qps_1t": 5606, + "ivf_qps_nt": 13346, + "threads": 4, + "num_vectors": 100000, + "dimensions": 128 } ] } \ No newline at end of file