cccl
cccl copied to clipboard
[FEA]: Aynchronous data structures that use a cuda::mr::asyncresource to allocate their memory
Stream ordered memory allocations a incredibly important for SOL applications.
At the same time they are easy to misuse. We need to provide uses with higher level data structures that minimize those sharp edges.
-
Similar to #1768 we want a wrapper around an async allocation. This avoids common pitfalls like forgetting to free memory and issues with alignment and size of the allocation. The memory should be uninitialized, so tht we can use it as a building block for higher level types
-
Similar to #2057 we want a high level standard compatible container that is easy to use and hard to misuse. We need to ensure that all operations of the vector are inherently stream ordered to avoid data races.
### Higher level asynchronous data structures
- [ ] https://github.com/NVIDIA/cccl/issues/2141
- [ ] https://github.com/NVIDIA/cccl/issues/2142
- [ ] https://github.com/NVIDIA/cccl/issues/2145