NVIDIA / NVIDIA/cccl

Improve initial top-k implementation for review comments and work deferred for follow-up PRs

Open
#6,191 2 comments 1 reaction 1 assignee Claimed by @elstehle View on GitHub
Dominant language
C++
Stars
2.5k
Forks
486
Avg merge
2d 6h
Merged PRs (30d)
295

Description

This issue tracks several follow-up work items for the initial top-k implementation.

- [x] https://github.com/NVIDIA/cccl/issues/6214
- [x] https://github.com/NVIDIA/cccl/issues/6282
- [ ] Use `::cuda::std::bit_cast` (https://github.com/NVIDIA/cccl/pull/5677#discussion_r2372171652) and verify it doesn't impact sass.
- [ ] Clarify memory order with Gonzalo and refactor (volatile and threadfence) https://github.com/NVIDIA/cccl/pull/5677#discussion_r2372580923
- [x] Extract first histogram-only pass into own kernel
- [ ] Revisit the tuning parameters we want to tune for and expose (https://github.com/NVIDIA/cccl/pull/5677#discussion_r2372777306)

### Potential Performance Improvements
- [ ] Add [work stealing](https://nvidia.github.io/cccl/libcudacxx/extended_api/work_stealing.html) to `process_range`
- [ ] Consider pre-allocating and pre-initializing multiple histograms & counters for all passes upfront
- [ ] Add PDL
- [ ] Add mechanism that performs local partitioning for write-coalescing and expose it as option to tuning policies

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.