Merge commit 'd803bfe2b1fe7f5e219e50ac20d6801a0a58ac75' as 'vendor/ruvector'

This commit is contained in:
ruv
2026-02-28 14:39:40 -05:00
7854 changed files with 3522914 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
name,dataset,dimensions,num_vectors,num_queries,k,qps,p50,p95,p99,p999,recall@1,recall@10,recall@100,memory_mb,build_time
ruvector_optimized,synthetic,384,10000,100,10,1215.90,0.78,0.78,0.78,0.78,1.0000,1.0000,1.0000,0.00,0.00
ruvector_no_quant,synthetic,384,10000,100,10,1218.00,0.78,0.78,0.78,0.78,1.0000,1.0000,1.0000,0.00,0.00
python_baseline,synthetic,384,10000,100,10,77.46,11.88,11.88,11.88,11.88,1.0000,1.0000,1.0000,0.00,0.00
brute_force,synthetic,384,10000,100,10,12.17,77.76,77.76,77.76,77.76,1.0000,1.0000,1.0000,0.00,0.00
1 name dataset dimensions num_vectors num_queries k qps p50 p95 p99 p999 recall@1 recall@10 recall@100 memory_mb build_time
2 ruvector_optimized synthetic 384 10000 100 10 1215.90 0.78 0.78 0.78 0.78 1.0000 1.0000 1.0000 0.00 0.00
3 ruvector_no_quant synthetic 384 10000 100 10 1218.00 0.78 0.78 0.78 0.78 1.0000 1.0000 1.0000 0.00 0.00
4 python_baseline synthetic 384 10000 100 10 77.46 11.88 11.88 11.88 11.88 1.0000 1.0000 1.0000 0.00 0.00
5 brute_force synthetic 384 10000 100 10 12.17 77.76 77.76 77.76 77.76 1.0000 1.0000 1.0000 0.00 0.00

View File

@@ -0,0 +1,89 @@
[
{
"name": "ruvector_optimized",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 10000,
"num_queries": 100,
"k": 10,
"qps": 1215.8984855108915,
"latency_p50": 0.78,
"latency_p95": 0.78,
"latency_p99": 0.78,
"latency_p999": 0.78,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"system": "ruvector"
}
},
{
"name": "ruvector_no_quant",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 10000,
"num_queries": 100,
"k": 10,
"qps": 1218.0020656584231,
"latency_p50": 0.775,
"latency_p95": 0.775,
"latency_p99": 0.775,
"latency_p999": 0.775,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"system": "ruvector_no_quant"
}
},
{
"name": "python_baseline",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 10000,
"num_queries": 100,
"k": 10,
"qps": 77.46019665191933,
"latency_p50": 11.879000000000001,
"latency_p95": 11.879000000000001,
"latency_p99": 11.879000000000001,
"latency_p999": 11.879000000000001,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"simulated": "true",
"system": "python_numpy"
}
},
{
"name": "brute_force",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 10000,
"num_queries": 100,
"k": 10,
"qps": 12.174453737434945,
"latency_p50": 77.759,
"latency_p95": 77.759,
"latency_p99": 77.759,
"latency_p999": 77.759,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"system": "brute_force",
"simulated": "true",
"slowdown_factor": "100"
}
}
]

View File

@@ -0,0 +1,84 @@
# Ruvector Benchmark Results
Generated: 2026-01-18 21:59:06 UTC
## ruvector_optimized
**Dataset:** synthetic (384D, 10000 vectors)
### Performance
- **QPS:** 1215.90
- **Latency (p50):** 0.78ms
- **Latency (p95):** 0.78ms
- **Latency (p99):** 0.78ms
- **Latency (p99.9):** 0.78ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## ruvector_no_quant
**Dataset:** synthetic (384D, 10000 vectors)
### Performance
- **QPS:** 1218.00
- **Latency (p50):** 0.78ms
- **Latency (p95):** 0.78ms
- **Latency (p99):** 0.78ms
- **Latency (p99.9):** 0.78ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## python_baseline
**Dataset:** synthetic (384D, 10000 vectors)
### Performance
- **QPS:** 77.46
- **Latency (p50):** 11.88ms
- **Latency (p95):** 11.88ms
- **Latency (p99):** 11.88ms
- **Latency (p99.9):** 11.88ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## brute_force
**Dataset:** synthetic (384D, 10000 vectors)
### Performance
- **QPS:** 12.17
- **Latency (p50):** 77.76ms
- **Latency (p95):** 77.76ms
- **Latency (p99):** 77.76ms
- **Latency (p99.9):** 77.76ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s

View File

@@ -0,0 +1,14 @@
name,dataset,dimensions,num_vectors,num_queries,k,qps,p50,p95,p99,p999,recall@1,recall@10,recall@100,memory_mb,build_time
single_threaded,synthetic,384,50000,1000,10,394.26,1.80,1.84,1.84,1.84,1.0000,1.0000,1.0000,0.00,0.00
multi_threaded_1,synthetic,384,50000,1000,10,3590.55,2.87,4.92,5.92,11.26,1.0000,1.0000,1.0000,0.00,0.00
multi_threaded_4,synthetic,384,50000,1000,10,3158.70,2.83,5.98,9.63,13.10,1.0000,1.0000,1.0000,0.00,0.00
multi_threaded_8,synthetic,384,50000,1000,10,3264.20,2.80,5.17,8.28,10.93,1.0000,1.0000,1.0000,0.00,0.00
multi_threaded_16,synthetic,384,50000,1000,10,3597.27,2.86,5.11,8.47,14.48,1.0000,1.0000,1.0000,0.00,0.00
ef_search_50,synthetic,384,50000,1000,10,673.83,1.35,1.35,1.35,1.35,1.0000,1.0000,1.0000,0.00,0.00
ef_search_100,synthetic,384,50000,1000,10,596.16,1.37,1.38,1.38,1.38,1.0000,1.0000,1.0000,0.00,0.00
ef_search_200,synthetic,384,50000,1000,10,571.80,1.40,1.41,1.41,1.41,1.0000,1.0000,1.0000,0.00,0.00
ef_search_400,synthetic,384,50000,1000,10,434.02,1.97,1.98,1.98,1.98,1.0000,1.0000,1.0000,0.00,0.00
ef_search_800,synthetic,384,50000,1000,10,434.06,1.77,1.82,1.82,1.82,1.0000,1.0000,1.0000,0.00,0.00
quantization_none,synthetic,384,50000,1000,10,423.80,1.70,1.77,1.77,1.77,1.0000,1.0000,1.0000,0.00,0.00
quantization_scalar,synthetic,384,50000,1000,10,411.33,1.75,1.82,1.82,1.82,1.0000,1.0000,1.0000,0.00,0.00
quantization_binary,synthetic,384,50000,1000,10,440.34,1.70,1.75,1.75,1.75,1.0000,1.0000,1.0000,0.00,0.00
1 name dataset dimensions num_vectors num_queries k qps p50 p95 p99 p999 recall@1 recall@10 recall@100 memory_mb build_time
2 single_threaded synthetic 384 50000 1000 10 394.26 1.80 1.84 1.84 1.84 1.0000 1.0000 1.0000 0.00 0.00
3 multi_threaded_1 synthetic 384 50000 1000 10 3590.55 2.87 4.92 5.92 11.26 1.0000 1.0000 1.0000 0.00 0.00
4 multi_threaded_4 synthetic 384 50000 1000 10 3158.70 2.83 5.98 9.63 13.10 1.0000 1.0000 1.0000 0.00 0.00
5 multi_threaded_8 synthetic 384 50000 1000 10 3264.20 2.80 5.17 8.28 10.93 1.0000 1.0000 1.0000 0.00 0.00
6 multi_threaded_16 synthetic 384 50000 1000 10 3597.27 2.86 5.11 8.47 14.48 1.0000 1.0000 1.0000 0.00 0.00
7 ef_search_50 synthetic 384 50000 1000 10 673.83 1.35 1.35 1.35 1.35 1.0000 1.0000 1.0000 0.00 0.00
8 ef_search_100 synthetic 384 50000 1000 10 596.16 1.37 1.38 1.38 1.38 1.0000 1.0000 1.0000 0.00 0.00
9 ef_search_200 synthetic 384 50000 1000 10 571.80 1.40 1.41 1.41 1.41 1.0000 1.0000 1.0000 0.00 0.00
10 ef_search_400 synthetic 384 50000 1000 10 434.02 1.97 1.98 1.98 1.98 1.0000 1.0000 1.0000 0.00 0.00
11 ef_search_800 synthetic 384 50000 1000 10 434.06 1.77 1.82 1.82 1.82 1.0000 1.0000 1.0000 0.00 0.00
12 quantization_none synthetic 384 50000 1000 10 423.80 1.70 1.77 1.77 1.77 1.0000 1.0000 1.0000 0.00 0.00
13 quantization_scalar synthetic 384 50000 1000 10 411.33 1.75 1.82 1.82 1.82 1.0000 1.0000 1.0000 0.00 0.00
14 quantization_binary synthetic 384 50000 1000 10 440.34 1.70 1.75 1.75 1.75 1.0000 1.0000 1.0000 0.00 0.00

View File

@@ -0,0 +1,273 @@
[
{
"name": "single_threaded",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 394.2612773048821,
"latency_p50": 1.802,
"latency_p95": 1.84,
"latency_p99": 1.84,
"latency_p999": 1.84,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {}
},
{
"name": "multi_threaded_1",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 3590.5525338642337,
"latency_p50": 2.8725,
"latency_p95": 4.9171249999999995,
"latency_p99": 5.915125000000001,
"latency_p999": 11.257,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"threads": "1"
}
},
{
"name": "multi_threaded_4",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 3158.700202068685,
"latency_p50": 2.83425,
"latency_p95": 5.983750000000001,
"latency_p99": 9.629083,
"latency_p999": 13.0975,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"threads": "4"
}
},
{
"name": "multi_threaded_8",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 3264.1971800718075,
"latency_p50": 2.799334,
"latency_p95": 5.170167,
"latency_p99": 8.281,
"latency_p999": 10.929542,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"threads": "8"
}
},
{
"name": "multi_threaded_16",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 3597.266257507607,
"latency_p50": 2.859084,
"latency_p95": 5.105084000000001,
"latency_p99": 8.471042,
"latency_p999": 14.47975,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"threads": "16"
}
},
{
"name": "ef_search_50",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 673.8290389990807,
"latency_p50": 1.346,
"latency_p95": 1.349,
"latency_p99": 1.349,
"latency_p999": 1.349,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"ef_search": "50"
}
},
{
"name": "ef_search_100",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 596.1576449850057,
"latency_p50": 1.366,
"latency_p95": 1.375,
"latency_p99": 1.375,
"latency_p999": 1.375,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"ef_search": "100"
}
},
{
"name": "ef_search_200",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 571.8043285587672,
"latency_p50": 1.4,
"latency_p95": 1.411,
"latency_p99": 1.411,
"latency_p999": 1.411,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"ef_search": "200"
}
},
{
"name": "ef_search_400",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 434.02464598101585,
"latency_p50": 1.965,
"latency_p95": 1.981,
"latency_p99": 1.981,
"latency_p999": 1.981,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"ef_search": "400"
}
},
{
"name": "ef_search_800",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 434.0612572013698,
"latency_p50": 1.772,
"latency_p95": 1.821,
"latency_p99": 1.821,
"latency_p999": 1.821,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"ef_search": "800"
}
},
{
"name": "quantization_none",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 423.8023729012711,
"latency_p50": 1.7049999999999998,
"latency_p95": 1.771,
"latency_p99": 1.771,
"latency_p999": 1.771,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"quantization": "none"
}
},
{
"name": "quantization_scalar",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 411.3324982598064,
"latency_p50": 1.751,
"latency_p95": 1.824,
"latency_p99": 1.824,
"latency_p999": 1.824,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"quantization": "scalar"
}
},
{
"name": "quantization_binary",
"dataset": "synthetic",
"dimensions": 384,
"num_vectors": 50000,
"num_queries": 1000,
"k": 10,
"qps": 440.33957446794454,
"latency_p50": 1.7049999999999998,
"latency_p95": 1.752,
"latency_p99": 1.752,
"latency_p999": 1.752,
"recall_at_1": 1.0,
"recall_at_10": 1.0,
"recall_at_100": 1.0,
"memory_mb": 0.0,
"build_time_secs": 0.0,
"metadata": {
"quantization": "binary"
}
}
]

View File

@@ -0,0 +1,264 @@
# Ruvector Benchmark Results
Generated: 2026-01-18 19:19:31 UTC
## single_threaded
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 394.26
- **Latency (p50):** 1.80ms
- **Latency (p95):** 1.84ms
- **Latency (p99):** 1.84ms
- **Latency (p99.9):** 1.84ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## multi_threaded_1
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 3590.55
- **Latency (p50):** 2.87ms
- **Latency (p95):** 4.92ms
- **Latency (p99):** 5.92ms
- **Latency (p99.9):** 11.26ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## multi_threaded_4
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 3158.70
- **Latency (p50):** 2.83ms
- **Latency (p95):** 5.98ms
- **Latency (p99):** 9.63ms
- **Latency (p99.9):** 13.10ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## multi_threaded_8
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 3264.20
- **Latency (p50):** 2.80ms
- **Latency (p95):** 5.17ms
- **Latency (p99):** 8.28ms
- **Latency (p99.9):** 10.93ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## multi_threaded_16
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 3597.27
- **Latency (p50):** 2.86ms
- **Latency (p95):** 5.11ms
- **Latency (p99):** 8.47ms
- **Latency (p99.9):** 14.48ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## ef_search_50
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 673.83
- **Latency (p50):** 1.35ms
- **Latency (p95):** 1.35ms
- **Latency (p99):** 1.35ms
- **Latency (p99.9):** 1.35ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## ef_search_100
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 596.16
- **Latency (p50):** 1.37ms
- **Latency (p95):** 1.38ms
- **Latency (p99):** 1.38ms
- **Latency (p99.9):** 1.38ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## ef_search_200
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 571.80
- **Latency (p50):** 1.40ms
- **Latency (p95):** 1.41ms
- **Latency (p99):** 1.41ms
- **Latency (p99.9):** 1.41ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## ef_search_400
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 434.02
- **Latency (p50):** 1.97ms
- **Latency (p95):** 1.98ms
- **Latency (p99):** 1.98ms
- **Latency (p99.9):** 1.98ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## ef_search_800
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 434.06
- **Latency (p50):** 1.77ms
- **Latency (p95):** 1.82ms
- **Latency (p99):** 1.82ms
- **Latency (p99.9):** 1.82ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## quantization_none
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 423.80
- **Latency (p50):** 1.70ms
- **Latency (p95):** 1.77ms
- **Latency (p99):** 1.77ms
- **Latency (p99.9):** 1.77ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## quantization_scalar
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 411.33
- **Latency (p50):** 1.75ms
- **Latency (p95):** 1.82ms
- **Latency (p99):** 1.82ms
- **Latency (p99.9):** 1.82ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s
## quantization_binary
**Dataset:** synthetic (384D, 50000 vectors)
### Performance
- **QPS:** 440.34
- **Latency (p50):** 1.70ms
- **Latency (p95):** 1.75ms
- **Latency (p99):** 1.75ms
- **Latency (p99.9):** 1.75ms
### Recall
- **Recall@1:** 100.00%
- **Recall@10:** 100.00%
- **Recall@100:** 100.00%
### Resources
- **Memory:** 0.00 MB
- **Build Time:** 0.00s