Skip to content

Commit

Permalink
Add cuvs_bench python folder, config files and constraints (#244)
Browse files Browse the repository at this point in the history
Authors:
  - Dante Gama Dessavre (https://github.com/dantegd)
  - Corey J. Nolet (https://github.com/cjnolet)

Approvers:
  - Corey J. Nolet (https://github.com/cjnolet)

URL: #244
dantegd authored Jul 31, 2024
1 parent 0227527 commit 812fffd
Showing 32 changed files with 11,803 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
name: cuvs_brute_force
groups:
base:
build:
search:
13 changes: 13 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/cuvs_cagra.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: cuvs_cagra
constraints:
build: cuvs_bench.constraints.raft_cagra_build_constraints
search: cuvs_bench.constraints.raft_cagra_search_constraints
groups:
base:
build:
graph_degree: [32, 64, 128, 256]
intermediate_graph_degree: [32, 64, 96, 128]
graph_build_algo: ["NN_DESCENT"]
search:
itopk: [32, 64, 128, 256, 512]
search_width: [1, 2, 4, 8, 16, 32, 64]
11 changes: 11 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/cuvs_cagra_hnswlib.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: cuvs_cagra_hnswlib
constraints:
search: cuvs_bench.constraints.hnswlib_search
groups:
base:
build:
graph_degree: [32, 64, 128, 256]
intermediate_graph_degree: [32, 64, 96, 128]
graph_build_algo: ["NN_DESCENT"]
search:
ef: [10, 20, 40, 60, 80, 120, 200, 400, 600, 800]
9 changes: 9 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/cuvs_ivf_flat.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: cuvs_ivf_flat
groups:
base:
build:
nlist: [1024, 2048, 4096, 8192, 16384, 32000, 64000]
ratio: [1, 2, 4]
niter: [20, 25]
search:
nprobe: [1, 5, 10, 50, 100, 200, 500, 1000, 2000]
41 changes: 41 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/cuvs_ivf_pq.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: cuvs_ivf_pq
constraints:
build: cuvs_bench.constraints.cuvs_ivf_pq_build
search: cuvs_bench.constraints.cuvs_ivf_pq_search
groups:
base:
build:
nlist: [1024, 2048, 4096, 8192]
pq_dim: [64, 32, 16]
pq_bits: [8, 6, 5, 4]
ratio: [10]
niter: [25]
search:
nprobe: [1, 5, 10, 50, 100, 200]
internalDistanceDtype: ["float"]
smemLutDtype: ["float", "fp8", "half"]
refine_ratio: [1, 2, 4]
large:
build:
nlist: [8192, 16384, 32768, 65536]
pq_dim: [48, 32, 16]
pq_bits: [8, 6, 5, 4]
ratio: [4]
niter: [20]
search:
nprobe: [20, 30, 40, 50, 100, 200, 500, 1000]
internalDistanceDtype: ["float"]
smemLutDtype: ["float", "fp8", "half"]
refine_ratio: [1, 2, 4]
100M:
build:
nlist: [50000]
pq_dim: [48]
pq_bits: [8, 6, 5, 4]
ratio: [10]
niter: [10]
search:
nprobe: [20, 30, 40, 50, 100, 200, 500, 1000]
internalDistanceDtype: ["float"]
smemLutDtype: ["float", "fp8", "half"]
refine_ratio: [1]
5 changes: 5 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/faiss_cpu_flat.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
name: faiss_cpu_flat
groups:
base:
build:
search:
10 changes: 10 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/faiss_cpu_ivf_flat.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: faiss_cpu_ivf_flat
groups:
base:
build:
nlist: [2048]
ratio: [10]
useFloat16: [False]
search:
nprobe: [1, 5, 10, 50, 100, 200]
refine_ratio: [1]
18 changes: 18 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/faiss_cpu_ivf_pq.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: faiss_cpu_ivf_pq
groups:
base:
build:
nlist: [1024, 2048, 4096, 8192]
M: [48, 32, 16]
ratio: [10]
bitsPerCode: [8, 6, 5, 4]
search:
nprobe: [1, 5, 10, 50, 100, 200]
large:
build:
nlist: [8192, 16384, 32768, 65536]
M: [48, 32, 16]
ratio: [10]
bitsPerCode: [8, 6, 5, 4]
search:
nprobe: [20, 30, 40, 50, 100, 200, 500, 1000]
5 changes: 5 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/faiss_gpu_flat.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
name: faiss_gpu_flat
groups:
base:
build:
search:
21 changes: 21 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/faiss_gpu_ivf_flat.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: faiss_gpu_ivf_flat
groups:
base:
build:
nlist: [2048]
ratio: [10]
useFloat16: [False, True]
use_raft: [False]
search:
nprobe: [1, 5, 10, 50, 100, 200]
refine_ratio: [1]
groups:
baseraft:
build:
nlist: [2048]
ratio: [10]
useFloat16: [False, True]
use_raft: [True]
search:
nprobe: [1, 5, 10, 50, 100, 200]
refine_ratio: [1]
77 changes: 77 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/faiss_gpu_ivf_pq.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
name: faiss_gpu_ivf_pq
constraints:
build: cuvs_bench.constraints.faiss_gpu_ivf_pq_build
search: cuvs_bench.constraints.faiss_gpu_ivf_pq_search
groups:
base:
build:
nlist: [1024, 2048, 4096, 8192]
M: [64, 32, 16]
ratio: [10]
usePrecomputed: [False, True]
useFloat16: [False, True]
use_raft: [False]
bitsPerCode: [8]
search:
nprobe: [1, 5, 10, 50, 100, 200]
refine_ratio: [1, 2, 4]
baseraft:
build:
nlist: [1024, 2048, 4096, 8192]
M: [64, 32, 16]
ratio: [10]
usePrecomputed: [False]
useFloat16: [False, True]
use_raft: [True]
bitsPerCode: [8, 6, 5, 4]
search:
nprobe: [1, 5, 10, 50, 100, 200]
refine_ratio: [1, 2, 4]
large:
build:
nlist: [8192, 16384, 32768, 65536]
M: [48, 32, 16]
ratio: [4]
usePrecomputed: [False, True]
useFloat16: [False, True]
use_raft: [False]
bitsPerCode: [8]
search:
nprobe: [20, 30, 40, 50, 100, 200, 500, 1000]
refine_ratio: [1, 2, 4]
largeraft:
build:
nlist: [8192, 16384, 32768, 65536]
M: [48, 32, 16]
ratio: [4]
usePrecomputed: [False]
useFloat16: [False, True]
use_raft: [True]
bitsPerCode: [8, 6, 5, 4]
search:
nprobe: [20, 30, 40, 50, 100, 200, 500, 1000]
refine_ratio: [1, 2, 4]
100M:
build:
nlist: [50000]
M: [48]
ratio: [10]
usePrecomputed: [False, True]
useFloat16: [False, True]
use_raft: [False]
bitsPerCode: [8]
search:
nprobe: [20, 30, 40, 50, 100, 200, 500, 1000]
refine_ratio: [1]
100Mraft:
build:
nlist: [50000]
M: [48]
ratio: [10]
usePrecomputed: [False, True]
useFloat16: [False, True]
use_raft: [True]
bitsPerCode: [8, 6, 5, 4]
search:
nprobe: [20, 30, 40, 50, 100, 200, 500, 1000]
refine_ratio: [1]
10 changes: 10 additions & 0 deletions python/cuvs_bench/cuvs_bench/config/algos/hnswlib.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: hnswlib
constraints:
search: cuvs_bench.constraints.hnswlib_search
groups:
base:
build:
M: [12, 16, 24, 36]
efConstruction: [64, 128, 256, 512]
search:
ef: [10, 20, 40, 60, 80, 120, 200, 400, 600, 800]
Loading

0 comments on commit 812fffd

Please sign in to comment.