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

Memory resource class for allocating pinned host memory. More...

#include <pinned_host_memory_resource.hpp>

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

Public Member Functions

 pinned_host_memory_resource (pinned_host_memory_resource const &)=default
 Default copy constructor.
 
 pinned_host_memory_resource (pinned_host_memory_resource &&)=default
 Default move constructor.
 
pinned_host_memory_resourceoperator= (pinned_host_memory_resource const &)=default
 Default copy assignment operator. More...
 
pinned_host_memory_resourceoperator= (pinned_host_memory_resource &&)=default
 Default move assignment operator. More...
 
- Public Member Functions inherited from rmm::mr::device_memory_resource
 device_memory_resource (device_memory_resource const &)=default
 Default copy constructor.
 
 device_memory_resource (device_memory_resource &&) noexcept=default
 Default move constructor.
 
device_memory_resourceoperator= (device_memory_resource const &)=default
 Default copy assignment operator. More...
 
device_memory_resourceoperator= (device_memory_resource &&) noexcept=default
 Default move assignment operator. More...
 
void * allocate_sync (std::size_t bytes, std::size_t alignment=rmm::CUDA_ALLOCATION_ALIGNMENT)
 Allocates memory of size at least bytes. More...
 
void deallocate_sync (void *ptr, std::size_t bytes, [[maybe_unused]] std::size_t alignment=rmm::CUDA_ALLOCATION_ALIGNMENT) noexcept
 Deallocate memory pointed to by p. More...
 
void * allocate (cuda_stream_view stream, std::size_t bytes, std::size_t alignment=rmm::CUDA_ALLOCATION_ALIGNMENT)
 Allocates memory of size at least bytes on the specified stream. More...
 
void deallocate (cuda_stream_view stream, void *ptr, std::size_t bytes, [[maybe_unused]] std::size_t alignment=rmm::CUDA_ALLOCATION_ALIGNMENT) noexcept
 Deallocate memory pointed to by ptr on the specified stream. More...
 
bool is_equal (device_memory_resource const &other) const noexcept
 Compare this resource to another. More...
 
bool operator== (device_memory_resource const &other) const noexcept
 Comparison operator with another device_memory_resource. More...
 
bool operator!= (device_memory_resource const &other) const noexcept
 Comparison operator with another device_memory_resource. More...
 

Friends

void get_property (pinned_host_memory_resource const &, cuda::mr::device_accessible) noexcept
 Enables the cuda::mr::device_accessible property. More...
 
void get_property (pinned_host_memory_resource const &, cuda::mr::host_accessible) noexcept
 Enables the cuda::mr::host_accessible property. More...
 

Detailed Description

Memory resource class for allocating pinned host memory.

This class uses CUDA's cudaHostAlloc to allocate pinned host memory. It implements the cuda::mr::memory_resource and cuda::mr::device_memory_resource concepts, and the cuda::mr::host_accessible and cuda::mr::device_accessible properties.

Member Function Documentation

◆ operator=() [1/2]

pinned_host_memory_resource& rmm::mr::pinned_host_memory_resource::operator= ( pinned_host_memory_resource &&  )
default

Default move assignment operator.

Returns
pinned_host_memory_resource& Reference to the assigned object

◆ operator=() [2/2]

pinned_host_memory_resource& rmm::mr::pinned_host_memory_resource::operator= ( pinned_host_memory_resource const &  )
default

Default copy assignment operator.

Returns
pinned_host_memory_resource& Reference to the assigned object

Friends And Related Function Documentation

◆ get_property [1/2]

void get_property ( pinned_host_memory_resource const &  ,
cuda::mr::device_accessible   
)
friend

Enables the cuda::mr::device_accessible property.

This property declares that a pinned_host_memory_resource provides device accessible memory

◆ get_property [2/2]

void get_property ( pinned_host_memory_resource const &  ,
cuda::mr::host_accessible   
)
friend

Enables the cuda::mr::host_accessible property.

This property declares that a pinned_host_memory_resource provides host accessible memory


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