cuda-api-wrappers
Thin C++-flavored wrappers for the CUDA Runtime API
unique_region.hpp File Reference

Implementations of make_unique_region() functions in different memory spaces. More...

#include "../unique_region.hpp"
#include "../types.hpp"
#include "../device.hpp"
Include dependency graph for unique_region.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 cuda
 Definitions and functionality wrapping CUDA APIs.
 
 cuda::memory
 Representation, allocation and manipulation of CUDA-related memory, of different.
 
 cuda::memory::device
 CUDA-Device-global memory on a single device (not accessible from the host)
 
 cuda::memory::host
 Host-side (= system) memory which is "pinned", i.e.
 
 cuda::memory::managed
 Paged memory accessible in both device-side and host-side code by triggering transfers of pages between physical system memory and physical device memory.
 

Functions

unique_region cuda::memory::device::make_unique_region (const context_t &context, size_t num_bytes)
 Allocate a region in device-global memory. More...
 
unique_region cuda::memory::device::make_unique_region (const device_t &device, size_t num_elements)
 Create a variant of ::std::unique_pointer for an array in device-global memory. More...
 
unique_region cuda::memory::device::make_unique_region (size_t num_elements)
 Create a variant of ::std::unique_pointer for an array in device-global memory on the current device. More...
 
unique_region cuda::memory::host::make_unique_region (size_t num_bytes)
 Allocate a physical-address-pinned region of system memory. More...
 
unique_region cuda::memory::managed::make_unique_region (const context_t &context, size_t num_bytes, initial_visibility_t initial_visibility)
 Allocate a region of managed memory, accessible both from CUDA devices and from the CPU. More...
 
unique_region cuda::memory::managed::make_unique_region (const device_t &device, size_t num_bytes, initial_visibility_t initial_visibility)
 Allocate a region of managed memory, accessible both from CUDA devices and from the CPU. More...
 
unique_region cuda::memory::managed::make_unique_region (size_t num_bytes, initial_visibility_t initial_visibility)
 

Detailed Description

Implementations of make_unique_region() functions in different memory spaces.