[FEA]: Synchronous data structures that use a cuda::mr::resource to allocate their memory #2129
Labels
2.8.0
target for 2.8.0 release
CUDA Next
Feature intended for the Cuda Next experimental library
feature request
New feature or request.
We need to implement higher level data structures that take a
cuda::mr::resource_ref
as an type erased way of allocating memory.The goal is that the user is not required to manually handle allocations at all.
A first type will be a basic wrapper around an allocation that allocated in the constructor and deallocates in the destructor similar to
std::unique_ptr
. An important distinction is that we do not want to initialize memory there because we want to avoid forcing a kernel launch. This will require the user to handle uninitialized memory with all the dangers that involves.A second type will be a full fledged container
cuda::vector
that comes with all the bells and whistles a user might expect. We will usestd::inplace_vector
as a template for its API but also provide a way of avoiding the initialization costInitially we will focus on two types:
cuda::buffer<Properties...>
#1768cuda::vector<T, Properties...>
(likethrust::host_vector/device_vector
) #2057The text was updated successfully, but these errors were encountered: