Public Member Functions | List of all members
rmm::mr::cuda_async_memory_resource Class Referencefinal

device_memory_resource derived class that uses cudaMallocAsync/cudaFreeAsync for allocation/deallocation. More...

#include <cuda_async_memory_resource.hpp>

Inheritance diagram for rmm::mr::cuda_async_memory_resource:
Inheritance graph
[legend]
Collaboration diagram for rmm::mr::cuda_async_memory_resource:
Collaboration graph
[legend]

Public Member Functions

 cuda_async_memory_resource ()
 Default constructor. More...
 
 cuda_async_memory_resource (cuda_async_memory_resource const &)=default
 
 cuda_async_memory_resource (cuda_async_memory_resource &&)=default
 
cuda_async_memory_resourceoperator= (cuda_async_memory_resource const &)=default
 
cuda_async_memory_resourceoperator= (cuda_async_memory_resource &&)=default
 
bool supports_streams () const noexcept override
 Query whether the resource supports use of non-null CUDA streams for allocation/deallocation. cuda_memory_resource does not support streams. More...
 
bool supports_get_mem_info () const noexcept override
 Query whether the resource supports the get_mem_info API. More...
 
- Public Member Functions inherited from rmm::mr::device_memory_resource
void * allocate (std::size_t bytes, cuda_stream_view stream=cuda_stream_view{})
 Allocates memory of size at least bytes. More...
 
void deallocate (void *p, std::size_t bytes, cuda_stream_view stream=cuda_stream_view{})
 Deallocate memory pointed to by p. More...
 
bool is_equal (device_memory_resource const &other) const noexcept
 Compare this resource to another. More...
 
std::pair< std::size_t, std::size_t > get_mem_info (cuda_stream_view stream) const
 Queries the amount of free and total memory for the resource. More...
 

Detailed Description

device_memory_resource derived class that uses cudaMallocAsync/cudaFreeAsync for allocation/deallocation.

Constructor & Destructor Documentation

◆ cuda_async_memory_resource()

rmm::mr::cuda_async_memory_resource::cuda_async_memory_resource ( )
inline

Default constructor.

Exceptions
rmm::runtime_errorif the CUDA version does not support cudaMallocAsync

Member Function Documentation

◆ supports_get_mem_info()

bool rmm::mr::cuda_async_memory_resource::supports_get_mem_info ( ) const
inlineoverridevirtualnoexcept

Query whether the resource supports the get_mem_info API.

Returns
true

Implements rmm::mr::device_memory_resource.

◆ supports_streams()

bool rmm::mr::cuda_async_memory_resource::supports_streams ( ) const
inlineoverridevirtualnoexcept

Query whether the resource supports use of non-null CUDA streams for allocation/deallocation. cuda_memory_resource does not support streams.

Returns
bool true

Implements rmm::mr::device_memory_resource.


The documentation for this class was generated from the following file: