NVIDIA / NVIDIA/raft

[BUG] Ball Cover uses brute_force_knn specialization that's not instantiated

Open
#1,237 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug Build Time Improvement
Dominant language
Cuda
Stars
1k
Forks
251
Avg merge
1d 8h
Merged PRs (30d)
31

Description

The compile time for the ball cover specialization could be cut down if we either use a template combination that's already specialized or we create a new specializtion. I'd vote for the former.

Here's where the ball cover implementation is relying on the brute force knn: https://github.com/rapidsai/raft/blob/4ad7daba36d535c22f9182dae6bb714b34cbba25/cpp/include/raft/spatial/knn/detail/ball_cover.cuh#L185

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in cpp/include/raft/spatial/knn/detail/ball_cover.cuh at the ball cover implementation around line 185, where the brute_force_knn specialization is used. Determine whether an already-specialized template combination can replace it or whether a new specialization is required, then verify that the selected approach reduces compile-time cost without breaking the ball cover build or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
machine-learning, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.