|
cuda-api-wrappers
Thin C++-flavored wrappers for the CUDA Runtime API
|
A smart pointer for CUDA device- and host-side memory, similar to the standard library's ::std::unique_ptr. More...


Go to the source code of this file.
Classes | |
| class | cuda::memory::unique_region< Deleter > |
A class for holding a region_t of memory owned "uniquely" by its creator - similar to how ::std::unique_ptr holds a uniquely- owned pointer. More... | |
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. | |
Typedefs | |
| using | cuda::memory::device::unique_region = memory::unique_region< detail_::deleter > |
| A unique region of device-global memory. | |
| using | cuda::memory::host::unique_region = memory::unique_region< detail_::deleter > |
| A unique region of pinned host memory. | |
| using | cuda::memory::managed::unique_region = memory::unique_region< detail_::deleter > |
| A unique region of managed memory, see cuda::memory::managed. | |
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... | |
| device::unique_region | cuda::memory::make_unique_region (const context_t &context, size_t num_elements) |
| See device::make_unique_region(const context_t& context, size_t num_elements) | |
| device::unique_region | cuda::memory::make_unique_region (const device_t &device, size_t num_elements) |
| See device::make_unique_region(const device_t& device, size_t num_elements) | |
| 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) |
| Allocate a region of managed memory, accessible both from CUDA devices and from the CPU. More... | |
A smart pointer for CUDA device- and host-side memory, similar to the standard library's ::std::unique_ptr.