[EPIC] Extended Floating-Point Support
- Dominant language
- C++
- Stars
- 2.5k
- Forks
- 487
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 296
Description
We want to better support users in using extended floating-point types like `__half` and `bfloat16` in our libraries.
One of the major projects would be adding new extended floating-point library types to libcu++ for things like `__half` and `bfloat16`. The main goals would be:
* Works in host/device code
* Seamlessly uses equivalent core language type if/when the compiler supports it
* Conversion to/from existing cudart types
* Eventually supersede the cudart types
CUTLASS already has implementations of these types we could use as a starting point.
### Tasks for new types
- [x] https://github.com/NVIDIA/cccl/issues/1451
- [ ] https://github.com/NVIDIA/cccl/issues/1665
- [ ] https://github.com/NVIDIA/cccl/issues/2161
- [ ] https://github.com/NVIDIA/cccl/issues/2188
- [ ] https://github.com/NVIDIA/cccl/issues/2186
- [ ] https://github.com/NVIDIA/cccl/issues/2184
- [ ] https://github.com/NVIDIA/cccl/issues/2185
- [ ] https://github.com/NVIDIA/cccl/issues/2187
### Tasks for existing \_\_half/bfloat types
- [ ] https://github.com/NVIDIA/cccl/issues/525
### Tasks for extended floating-point vector types
- [ ] Provide extended floating-point vector types (e.g., half2)
- [ ] Provide cmath for extended floating-point vector types
Contributor guide
Assessment
This issue has not been assessed yet.