{
  "dataset": {
    "name": "deep-100M",
    "base_file": "deep-100M/base.1B.fbin",
    "subset_size": 100000000,
    "query_file": "deep-100M/query.public.10K.fbin",
    "groundtruth_neighbors_file": "deep-100M/groundtruth.neighbors.ibin",
    "distance": "euclidean"
  },

  "search_basic_param": {
    "batch_size": 10000,
    "k": 10
  },

  "index": [
    {
      "name": "hnswlib.M12",
      "algo": "hnswlib",
      "build_param": {"M":12, "efConstruction":500, "numThreads":32},
      "file": "deep-100M/hnswlib/M12",
      "search_params": [
        {"ef":10},
        {"ef":20},
        {"ef":40},
        {"ef":60},
        {"ef":80},
        {"ef":120},
        {"ef":200},
        {"ef":400},
        {"ef":600},
        {"ef":800}
      ]
    },
    {
      "name": "hnswlib.M16",
      "algo": "hnswlib",
      "build_param": {"M":16, "efConstruction":500, "numThreads":32},
      "file": "deep-100M/hnswlib/M16",
      "search_params": [
        {"ef":10},
        {"ef":20},
        {"ef":40},
        {"ef":60},
        {"ef":80},
        {"ef":120},
        {"ef":200},
        {"ef":400},
        {"ef":600},
        {"ef":800}
      ]
    },
    {
      "name": "hnswlib.M24",
      "algo": "hnswlib",
      "build_param": {"M":24, "efConstruction":500, "numThreads":32},
      "file": "deep-100M/hnswlib/M24",
      "search_params": [
        {"ef":10},
        {"ef":20},
        {"ef":40},
        {"ef":60},
        {"ef":80},
        {"ef":120},
        {"ef":200},
        {"ef":400},
        {"ef":600},
        {"ef":800}
      ]
    },
    {
      "name": "hnswlib.M36",
      "algo": "hnswlib",
      "build_param": {"M":36, "efConstruction":500, "numThreads":32},
      "file": "deep-100M/hnswlib/M36",
      "search_params": [
        {"ef":10},
        {"ef":20},
        {"ef":40},
        {"ef":60},
        {"ef":80},
        {"ef":120},
        {"ef":200},
        {"ef":400},
        {"ef":600},
        {"ef":800}
      ]
    },
    {
      "name": "faiss_gpu_ivf_flat.nlist50K",
      "algo": "faiss_gpu_ivf_flat",
      "build_param": {"nlist":50000},
      "file": "deep-100M/faiss_gpu_ivf_flat/nlist50K",
      "search_params": [
        {"nprobe":20},
        {"nprobe":30},
        {"nprobe":40},
        {"nprobe":50},
        {"nprobe":100},
        {"nprobe":200},
        {"nprobe":500},
        {"nprobe":1000}
      ]
    },
    {
      "name": "faiss_gpu_ivf_flat.nlist100K",
      "algo": "faiss_gpu_ivf_flat",
      "build_param": {"nlist":100000},
      "file": "deep-100M/faiss_gpu_ivf_flat/nlist100K",
      "search_params": [
        {"nprobe":20},
        {"nprobe":30},
        {"nprobe":40},
        {"nprobe":50},
        {"nprobe":100},
        {"nprobe":200},
        {"nprobe":500},
        {"nprobe":1000}
      ]
    },
    {
      "name": "faiss_gpu_ivf_flat.nlist200K",
      "algo": "faiss_gpu_ivf_flat",
      "build_param": {"nlist":200000},
      "file": "deep-100M/faiss_gpu_ivf_flat/nlist200K",
      "search_params": [
        {"nprobe":20},
        {"nprobe":30},
        {"nprobe":40},
        {"nprobe":50},
        {"nprobe":100},
        {"nprobe":200},
        {"nprobe":500},
        {"nprobe":1000}
      ]
    },
    {
      "name": "faiss_gpu_ivf_pq.M48-nlist16K",
      "algo": "faiss_gpu_ivf_pq",
      "build_param": {"nlist":16384, "M":48},
      "file": "deep-100M/faiss_gpu_ivf_pq/M48-nlist16K",
      "search_params": [
        {"nprobe":10},
        {"nprobe":20},
        {"nprobe":30},
        {"nprobe":40},
        {"nprobe":50},
        {"nprobe":100},
        {"nprobe":200},
        {"nprobe":500}
      ]
    },
    {
      "name": "faiss_gpu_ivf_pq.M48-nlist50K",
      "algo": "faiss_gpu_ivf_pq",
      "build_param": {"nlist":50000, "M":48},
      "file": "deep-100M/faiss_gpu_ivf_pq/M48-nlist50K",
      "search_params": [
        {"nprobe":20},
        {"nprobe":30},
        {"nprobe":40},
        {"nprobe":50},
        {"nprobe":100},
        {"nprobe":200},
        {"nprobe":500},
        {"nprobe":1000}
      ]
    },
    {
      "name": "faiss_gpu_ivf_pq.M48-nlist100K",
      "algo": "faiss_gpu_ivf_pq",
      "build_param": {"nlist":100000, "M":48},
      "file": "deep-100M/faiss_gpu_ivf_pq/M48-nlist100K",
      "search_params": [
        {"nprobe":20},
        {"nprobe":30},
        {"nprobe":40},
        {"nprobe":50},
        {"nprobe":100},
        {"nprobe":200},
        {"nprobe":500},
        {"nprobe":1000}
      ]
    },
    {
      "name": "faiss_gpu_ivf_pq.M48-nlist200K",
      "algo": "faiss_gpu_ivf_pq",
      "build_param": {"nlist":200000, "M":48},
      "file": "deep-100M/faiss_gpu_ivf_pq/M48-nlist200K",
      "search_params": [
        {"nprobe":20},
        {"nprobe":30},
        {"nprobe":40},
        {"nprobe":50},
        {"nprobe":100},
        {"nprobe":200},
        {"nprobe":500},
        {"nprobe":1000}
      ]
    },


    {
      "name": "raft_ivf_flat.nlist50K",
      "algo": "raft_ivf_flat",
      "build_param": {"nlist": 50000, "niter": 25, "ratio": 5},
      "file": "deep-100M/raft_ivf_flat/nlist50K",
      "search_params": [
        {"max_batch":10000, "max_k":10, "nprobe":20},
        {"max_batch":10000, "max_k":10, "nprobe":30},
        {"max_batch":10000, "max_k":10, "nprobe":40},
        {"max_batch":10000, "max_k":10, "nprobe":50},
        {"max_batch":10000, "max_k":10, "nprobe":100},
        {"max_batch":10000, "max_k":10, "nprobe":200},
        {"max_batch":10000, "max_k":10, "nprobe":500},
        {"max_batch":10000, "max_k":10, "nprobe":1000}
      ]
    },
    {
      "name": "raft_ivf_flat.nlist100K",
      "algo": "raft_ivf_flat",
      "build_param": {"nlist": 100000, "niter": 25, "ratio": 5},
      "file": "deep-100M/raft_ivf_flat/nlist100K",
      "search_params": [
        {"max_batch":10000, "max_k":10, "nprobe":20},
        {"max_batch":10000, "max_k":10, "nprobe":30},
        {"max_batch":10000, "max_k":10, "nprobe":40},
        {"max_batch":10000, "max_k":10, "nprobe":50},
        {"max_batch":10000, "max_k":10, "nprobe":100},
        {"max_batch":10000, "max_k":10, "nprobe":200},
        {"max_batch":10000, "max_k":10, "nprobe":500},
        {"max_batch":10000, "max_k":10, "nprobe":1000}
      ]
    },
    {
      "name": "raft_ivf_flat.nlist200K",
      "algo": "raft_ivf_flat",
      "build_param": {"nlist": 200000, "niter": 25, "ratio": 5},
      "file": "deep-100M/raft_ivf_flat/nlist200K",
      "search_params": [
        {"max_batch":10000, "max_k":10, "nprobe":20},
        {"max_batch":10000, "max_k":10, "nprobe":30},
        {"max_batch":10000, "max_k":10, "nprobe":40},
        {"max_batch":10000, "max_k":10, "nprobe":50},
        {"max_batch":10000, "max_k":10, "nprobe":100},
        {"max_batch":10000, "max_k":10, "nprobe":200},
        {"max_batch":10000, "max_k":10, "nprobe":500},
        {"max_batch":10000, "max_k":10, "nprobe":1000}
      ]
    },
{
      "name": "raft_ivf_pq.d96b5n50K",
      "algo": "raft_ivf_pq",
      "build_param": {"nlist": 50000, "pq_dim": 96, "pq_bits": 5, "ratio": 10, "niter": 25},
      "file": "deep-100M/raft_ivf_pq/d96b5n50K",
      "search_params": [
        { "nprobe": 20, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 30, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 40, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 50, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 100, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 200, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 1000, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 2000, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 5000, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 2 },
        { "nprobe": 20, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 30, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 40, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 50, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 100, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 200, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 1000, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 2000, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 5000, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 20, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 30, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 40, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 50, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 100, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 200, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 1000, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 2000, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 5000, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 20, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 30, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 40, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 50, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 100, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 200, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 1000, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 2000, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 5000, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 2 },
        { "nprobe": 20, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 30, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 40, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 50, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 100, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 200, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 1000, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 2000, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 },
        { "nprobe": 5000, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 2 }
      ]
    },
    {
      "name": "raft_ivf_pq.d64b5n50K",
      "algo": "raft_ivf_pq",
      "build_param": {"nlist": 50000, "pq_dim": 64, "pq_bits": 5, "ratio": 10, "niter": 25},
      "file": "deep-100M/raft_ivf_pq/d64b5n50K",
      "search_params": [
        { "nprobe": 20, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 30, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 40, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 50, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 100, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 200, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 1000, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 2000, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 5000, "internalDistanceDtype": "float", "smemLutDtype": "float", "refine_ratio": 4 },
        { "nprobe": 20, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 30, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 40, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 50, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 100, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 200, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 1000, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 2000, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 5000, "internalDistanceDtype": "float", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 20, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 30, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 40, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 50, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 100, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 200, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 1000, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 2000, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 5000, "internalDistanceDtype": "float", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 20, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 30, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 40, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 50, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 100, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 200, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 1000, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 2000, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 5000, "internalDistanceDtype": "half", "smemLutDtype": "half", "refine_ratio": 4 },
        { "nprobe": 20, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 30, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 40, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 50, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 100, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 200, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 1000, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 2000, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 },
        { "nprobe": 5000, "internalDistanceDtype": "half", "smemLutDtype": "fp8", "refine_ratio": 4 }
      ]
    },
    {
      "name": "raft_ivf_pq.dimpq512-cluster1024-float-float",
      "algo": "raft_ivf_pq",
      "build_param": {
        "nlist": 1024,
        "pq_dim": 512,
        "ratio": 1,
        "niter": 25
      },
      "file": "index/deep-image-96-angular/raft_ivf_pq/dimpq512-cluster1024-float-float",
      "search_params": [
        {"nprobe": 10, "internalDistanceDtype": "float", "smemLutDtype": "float"},
        {"nprobe": 50, "internalDistanceDtype": "float", "smemLutDtype": "float"},
        {"nprobe": 100, "internalDistanceDtype": "float", "smemLutDtype": "float"},
        {"nprobe": 200, "internalDistanceDtype": "float", "smemLutDtype": "float"},
        {"nprobe": 500, "internalDistanceDtype": "float", "smemLutDtype": "float"},
        {"nprobe": 1024, "internalDistanceDtype": "float", "smemLutDtype": "float"}
      ],
      "search_result_file": "result/deep-image-96-angular/raft_ivf_pq/dimpq512-cluster1024-float-float"
    },    
    {
      "name": "raft_cagra.dim32",
      "algo": "raft_cagra",
      "build_param": {"graph_degree": 32, "intermediate_graph_degree": 48},
      "file": "deep-100M/raft_cagra/dim32",
      "search_params": [
        {"itopk": 32, "search_width": 1, "max_iterations": 0, "algo": "single_cta"},
        {"itopk": 32, "search_width": 1, "max_iterations": 32, "algo": "single_cta"},
        {"itopk": 64, "search_width": 4, "max_iterations": 16, "algo": "single_cta"},
        {"itopk": 64, "search_width": 1, "max_iterations": 64, "algo": "single_cta"},
        {"itopk": 96, "search_width": 2, "max_iterations": 48, "algo": "single_cta"},
        {"itopk": 128, "search_width": 8, "max_iterations": 16, "algo": "single_cta"},
        {"itopk": 128, "search_width": 2, "max_iterations": 64, "algo": "single_cta"},
        {"itopk": 192, "search_width": 8, "max_iterations": 24, "algo": "single_cta"},
        {"itopk": 192, "search_width": 2, "max_iterations": 96, "algo": "single_cta"},
        {"itopk": 256, "search_width": 8, "max_iterations": 32, "algo": "single_cta"},
        {"itopk": 384, "search_width": 8, "max_iterations": 48, "algo": "single_cta"},
        {"itopk": 512, "search_width": 8, "max_iterations": 64, "algo": "single_cta"}
      ]
    },
    {
      "name": "raft_cagra.dim32.multi_cta",
      "algo": "raft_cagra",
      "build_param": {"graph_degree": 32, "intermediate_graph_degree": 48},
      "file": "deep-100M/raft_cagra/dim32",
      "search_params": [
        {"itopk": 32, "search_width": 1, "max_iterations": 0, "algo": "multi_cta"},
        {"itopk": 32, "search_width": 1, "max_iterations": 32, "algo": "multi_cta"},
        {"itopk": 64, "search_width": 4, "max_iterations": 16, "algo": "multi_cta"},
        {"itopk": 64, "search_width": 1, "max_iterations": 64, "algo": "multi_cta"},
        {"itopk": 96, "search_width": 2, "max_iterations": 48, "algo": "multi_cta"},
        {"itopk": 128, "search_width": 8, "max_iterations": 16, "algo": "multi_cta"},
        {"itopk": 128, "search_width": 2, "max_iterations": 64, "algo": "multi_cta"},
        {"itopk": 192, "search_width": 8, "max_iterations": 24, "algo": "multi_cta"},
        {"itopk": 192, "search_width": 2, "max_iterations": 96, "algo": "multi_cta"},
        {"itopk": 256, "search_width": 8, "max_iterations": 32, "algo": "multi_cta"},
        {"itopk": 384, "search_width": 8, "max_iterations": 48, "algo": "multi_cta"},
        {"itopk": 512, "search_width": 8, "max_iterations": 64, "algo": "multi_cta"}
      ]
    },
    {
      "name": "raft_cagra.dim32.multi_kernel",
      "algo": "raft_cagra",
      "build_param": {"graph_degree": 32, "intermediate_graph_degree": 48},
      "file": "deep-100M/raft_cagra/dim32",
      "search_params": [
        {"itopk": 32, "search_width": 1, "max_iterations": 0, "algo": "multi_kernel"},
        {"itopk": 32, "search_width": 1, "max_iterations": 32, "algo": "multi_kernel"},
        {"itopk": 64, "search_width": 4, "max_iterations": 16, "algo": "multi_kernel"},
        {"itopk": 64, "search_width": 1, "max_iterations": 64, "algo": "multi_kernel"},
        {"itopk": 96, "search_width": 2, "max_iterations": 48, "algo": "multi_kernel"},
        {"itopk": 128, "search_width": 8, "max_iterations": 16, "algo": "multi_kernel"},
        {"itopk": 128, "search_width": 2, "max_iterations": 64, "algo": "multi_kernel"},
        {"itopk": 192, "search_width": 8, "max_iterations": 24, "algo": "multi_kernel"},
        {"itopk": 192, "search_width": 2, "max_iterations": 96, "algo": "multi_kernel"},
        {"itopk": 256, "search_width": 8, "max_iterations": 32, "algo": "multi_kernel"},
        {"itopk": 384, "search_width": 8, "max_iterations": 48, "algo": "multi_kernel"},
        {"itopk": 512, "search_width": 8, "max_iterations": 64, "algo": "multi_kernel"}
      ]
    },
    {
      "name": "raft_cagra.dim64",
      "algo": "raft_cagra",
      "build_param": {"graph_degree": 64},
      "file": "deep-100M/raft_cagra/dim64",
      "search_params": [
        {"itopk": 32, "search_width": 1, "max_iterations": 0},
        {"itopk": 32, "search_width": 1, "max_iterations": 32},
        {"itopk": 64, "search_width": 4, "max_iterations": 16},
        {"itopk": 64, "search_width": 1, "max_iterations": 64},
        {"itopk": 96, "search_width": 2, "max_iterations": 48},
        {"itopk": 128, "search_width": 8, "max_iterations": 16},
        {"itopk": 128, "search_width": 2, "max_iterations": 64},
        {"itopk": 192, "search_width": 8, "max_iterations": 24},
        {"itopk": 192, "search_width": 2, "max_iterations": 96},
        {"itopk": 256, "search_width": 8, "max_iterations": 32},
        {"itopk": 384, "search_width": 8, "max_iterations": 48},
        {"itopk": 512, "search_width": 8, "max_iterations": 64}
      ]
    }
  ]
}
