NVIDIA / cccl

CUDA Core Compute Libraries
https://nvidia.github.io/cccl/
Other
1.27k stars 163 forks source link

[EPIC] Universal 64-bit index type support in Thrust/CUB algorithms #47

Open jrhemstad opened 1 year ago

jrhemstad commented 1 year ago

Summary

Users expect Thrust/CUB algorithms to work with input sequences larger than INT_MAX. However, for historical reasons, many Thrust/CUB algorithms are hard-coded to use int as the index/offset type. As a result, those algorithms will fail (often silently) when provided inputs whose extent is larger than std::numeric_limits<int>::max().

In order to provide a delightful and consistent user experience, every Thrust/CUB should be able to work with inputs larger than INT_MAX. However, we likely want different solutions in Thrust vs CUB.

Intended Outcome

Thrust

CUB

### Depends On
- [ ] https://github.com/NVIDIA/cccl/issues/24
# Tasks
- [ ] https://github.com/NVIDIA/cccl/issues/49
- [ ] https://github.com/NVIDIA/cccl/issues/50

Related Info

https://github.com/NVIDIA/cub/issues/212 was the previous tracking issue in CUB that has a lot of good discussion about what we want a solution to look like in Thrust vs CUB.

bhack commented 6 months ago

Any news on this?