Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[BUG] cuVS Bench Faiss CAGRA b_ratio reads the wrong JSON key

Đang mở Phù hợp với người mới
#2,718 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 2 ngày

@arcusbuilds đang làm issue này rồi.

Từ ngày 1/10/2026.

  • #2719 của @arcusbuilds — đang mở

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
84/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
cpp
Lĩnh vực
performance, tooling

Hướng nghiên cứu

Bắt đầu với cpp/bench/ann/src/faiss/faiss_gpu_benchmark.cu quanh các dòng 114-126, sau đó kiểm tra cấu hình faiss_gpu_cagra_hnsw.yaml được liên kết. Tái hiện benchmark IVF-PQ bằng cách sử dụng b_ratio không có ratio và bổ sung phạm vi kiểm thử hồi quy cho thấy cấu hình được phân tích và áp dụng phân số huấn luyện được yêu cầu.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bug

Describe the bug
The Faiss CAGRA benchmark parser recognizes the IVF-PQ build setting b_ratio, but reads ratio instead. If the configuration contains b_ratio without an unprefixed ratio, it appears to throw nlohmann::json::out_of_range before building. Both faiss_gpu_cagra and faiss_gpu_cagra_hnsw use this parser

Steps/Code to reproduce bug
In the existing Faiss CAGRA to HNSW benchmark configuration, set the build parameters to include:

cagra_build_algo: ["IVF_PQ"]
graph_degree: [44]
intermediate_graph_degree: [192]
b_ratio: [6]

Run the benchmark against a float32 dataset. No unprefixed ratio key is configured.

The parser removes b_ and checks ivf_pq_build_conf.contains("ratio"), then reads conf.at("ratio"). The latter key is absent.

Expected behavior
b_ratio: 6 sets the IVF-PQ training fraction to 1.0 / 6, and the CAGRA build proceeds.

Environment details (please complete the following information):
Inspected the NVIDIA/cuvs main branch on October 1, 2026.

Additional context
This affects benchmark configuration, not the CAGRA builder itself. Omitting b_ratio avoids the apparent exception but does not apply the requested training fraction. The parser could read ivf_pq_build_conf.at("ratio"); a regression test with b_ratio present and ratio absent would cover the case.

Ngôn ngữ chính
Cuda
Star
873
Fork
247
Merge trung bình
3 ngày 20 giờ
Pull request đã merge (30 ngày)
74

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của NVIDIA/cuvs

Tất cả issue của NVIDIA/cuvs

Issue tương tự

Thêm issue về Performance

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.