RMM
23.12
RAPIDS Memory Manager
|
Classes | |
class | rmm::mr::arena_memory_resource< Upstream > |
A suballocator that emphasizes fragmentation avoidance and scalable concurrency support. More... | |
class | rmm::mr::binning_memory_resource< Upstream > |
Allocates memory from upstream resources associated with bin sizes. More... | |
class | rmm::mr::callback_memory_resource |
A device memory resource that uses the provided callbacks for memory allocation and deallocation. More... | |
class | rmm::mr::cuda_async_memory_resource |
device_memory_resource derived class that uses cudaMallocAsync /cudaFreeAsync for allocation/deallocation. More... | |
class | rmm::mr::cuda_async_view_memory_resource |
device_memory_resource derived class that uses cudaMallocAsync /cudaFreeAsync for allocation/deallocation. More... | |
class | rmm::mr::cuda_memory_resource |
device_memory_resource derived class that uses cudaMalloc/Free for allocation/deallocation. More... | |
class | rmm::mr::device_memory_resource |
Base class for all libcudf device memory allocation. More... | |
class | rmm::mr::fixed_size_memory_resource< Upstream > |
A device_memory_resource which allocates memory blocks of a single fixed size. More... | |
class | rmm::mr::managed_memory_resource |
device_memory_resource derived class that uses cudaMallocManaged/Free for allocation/deallocation. More... | |
class | rmm::mr::pool_memory_resource< Upstream > |
A coalescing best-fit suballocator which uses a pool of memory allocated from an upstream memory_resource. More... | |
Typedefs | |
using | rmm::mr::allocate_callback_t = std::function< void *(std::size_t, cuda_stream_view, void *)> |
Callback function type used by callback memory resource for allocation. More... | |
using | rmm::mr::deallocate_callback_t = std::function< void(void *, std::size_t, cuda_stream_view, void *)> |
Callback function type used by callback_memory_resource for deallocation. More... | |
using rmm::mr::allocate_callback_t = typedef std::function<void*(std::size_t, cuda_stream_view, void*)> |
Callback function type used by callback memory resource for allocation.
The signature of the callback function is: `void* allocate_callback_t(std::size_t bytes, cuda_stream_view stream, void* arg);
bytes
usable immediately on stream
. The stream-ordered behavior requirements are identical to device_memory_resource::allocate
.do_allocate
but adds the extra function parameter arg
. The arg
is provided to the constructor of the callback_memory_resource
and will be forwarded along to every invocation of the callback function. using rmm::mr::deallocate_callback_t = typedef std::function<void(void*, std::size_t, cuda_stream_view, void*)> |
Callback function type used by callback_memory_resource for deallocation.
The signature of the callback function is: `void deallocate_callback_t(void* ptr, std::size_t bytes, cuda_stream_view stream, void* arg);
ptr
. bytes
specifies the size of the allocation in bytes, and must equal the value of bytes
that was passed to the allocate callback function. The stream-ordered behavior requirements are identical to device_memory_resource::deallocate
.do_deallocate
but adds the extra function parameter arg
. The arg
is provided to the constructor of the callback_memory_resource
and will be forwarded along to every invocation of the callback function.