Template Numerical Library version\ main:bb09b17
|
Allocator for the CUDA Unified Memory system. More...
#include <TNL/Allocators/CudaManaged.h>
Public Types | |
using | difference_type = std::ptrdiff_t |
using | size_type = std::size_t |
using | value_type = T |
Public Member Functions | |
CudaManaged (const CudaManaged &)=default | |
template<class U > | |
CudaManaged (const CudaManaged< U > &) | |
CudaManaged (CudaManaged &&) noexcept=default | |
template<class U > | |
CudaManaged (CudaManaged< U > &&) | |
value_type * | allocate (size_type n) |
void | deallocate (value_type *ptr, size_type) |
CudaManaged & | operator= (const CudaManaged &)=default |
template<class U > | |
CudaManaged & | operator= (const CudaManaged< U > &) |
CudaManaged & | operator= (CudaManaged &&) noexcept=default |
template<class U > | |
CudaManaged & | operator= (CudaManaged< U > &&) |
Allocator for the CUDA Unified Memory system.
The memory allocated by this allocator will be automatically managed by the CUDA Unified Memory system. The allocation is done using the cudaMallocManaged
function and the deallocation is done using the cudaFree
function.