Simplify template instantiations
Nobody has claimed this yet.
- Dominant language
- Cuda
- Stars
- 854
- Forks
- 236
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 62
Description
This is a tracking issue to simplify the template instantiations in the src folder. The goal is to reduce code duplication and make it easier to apply changes.
There are code duplications for template instantiations. Compare:
- Macro factored out into separate include file https://github.com/rapidsai/cuvs/blob/branch-24.08/cpp/src/neighbors/detail/cagra/search_single_cta_float_uint32_dim1024_t32.cu
- Macro duplicated https://github.com/rapidsai/cuvs/blob/branch-24.08/cpp/src/neighbors/ivf_pq/detail/ivf_pq_search_float_int64_t.cu
- The directory structure of the
srcfolder is more complex than ideal
Ref: https://github.com/rapidsai/cuvs/pull/264#discussion_r1698110821
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the two named files: cpp/src/neighbors/detail/cagra/search_single_cta_float_uint32_dim1024_t32.cu and cpp/src/neighbors/ivf_pq/detail/ivf_pq_search_float_int64_t.cu, then read the related PR discussion. Map the duplicated template-instantiation patterns and the current src directory structure. Done means reducing duplication and simplifying organization across the relevant instantiations.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- build-system
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100