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

Implementations of utility functions related to the cuda::unique_span class. More...

#include "../detail/unique_span.hpp"
#include "../current_device.hpp"
#include "../current_context.hpp"
#include "../primary_context.hpp"
#include "../memory.hpp"
#include "../types.hpp"
#include "../device.hpp"
Include dependency graph for unique_span.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::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

template<typename T >
unique_span< T > cuda::memory::device::make_unique_span (const context_t &context, size_t size)
 Allocate memory for a consecutive sequence of typed elements in device-global memory. More...
 
template<typename T >
unique_span< T > cuda::memory::device::make_unique_span (const device_t &device, size_t size)
 Allocate memory for a consecutive sequence of typed elements in device-global memory. More...
 
template<typename T >
unique_span< T > cuda::memory::device::make_unique_span (size_t size)
 Allocate memory for a consecutive sequence of typed elements in device-global memory. More...
 
template<typename T >
unique_span< T > cuda::memory::managed::make_unique_span (const context_t &context, size_t size, initial_visibility_t initial_visibility=initial_visibility_t::to_all_devices)
 Allocate memory for a consecutive sequence of typed elements in system (host-side) memory. More...
 
template<typename T >
unique_span< T > cuda::memory::managed::make_unique_span (const device_t &device, size_t size, initial_visibility_t initial_visibility=initial_visibility_t::to_all_devices)
 See device::make_unique_span(const context_t& context, size_t size) More...
 
template<typename T >
unique_span< T > cuda::memory::managed::make_unique_span (size_t size, initial_visibility_t initial_visibility=initial_visibility_t::to_all_devices)
 See device::make_unique_span(const context_t& context, size_t size) More...
 

Detailed Description

Implementations of utility functions related to the cuda::unique_span class.