stdgpu/memory.h File Reference#
stdgpu Latest
Efficient STL-like Data Structures on the GPU
|
memory.h File Reference
Go to the source code of this file.
Classes | |
struct | stdgpu::allocator_traits< Allocator > |
class | stdgpu::device_unique_object< T > |
struct | stdgpu::null_object_t |
struct | stdgpu::safe_device_allocator< T > |
struct | stdgpu::safe_host_allocator< T > |
struct | stdgpu::safe_managed_allocator< T > |
Enumerations | |
enum class | stdgpu::dynamic_memory_type { dynamic_memory_type::host , dynamic_memory_type::device , dynamic_memory_type::managed , dynamic_memory_type::invalid } |
enum class | Initialization { Initialization::HOST , Initialization::DEVICE } |
enum class | MemoryCopy { MemoryCopy::NO_CHECK , MemoryCopy::RANGE_CHECK } |
Functions | |
template<typename T , typename... Args> | |
STDGPU_HOST_DEVICE T * | stdgpu::construct_at (T *p, Args &&... args) |
template<typename T > | |
T * | copyCreateDevice2DeviceArray (const T *device_array, const stdgpu::index64_t count, const MemoryCopy check_safety=MemoryCopy::RANGE_CHECK) |
template<typename T > | |
T * | copyCreateDevice2HostArray (const T *device_array, const stdgpu::index64_t count, const MemoryCopy check_safety=MemoryCopy::RANGE_CHECK) |
template<typename T > | |
T * | copyCreateHost2DeviceArray (const T *host_array, const stdgpu::index64_t count, const MemoryCopy check_safety=MemoryCopy::RANGE_CHECK) |
template<typename T > | |
T * | copyCreateHost2HostArray (const T *host_array, const stdgpu::index64_t count, const MemoryCopy check_safety=MemoryCopy::RANGE_CHECK) |
template<typename T > | |
void | copyDevice2DeviceArray (const T *source_device_array, const stdgpu::index64_t count, T *destination_device_array, const MemoryCopy check_safety=MemoryCopy::RANGE_CHECK) |
template<typename T > | |
void | copyDevice2HostArray (const T *source_device_array, const stdgpu::index64_t count, T *destination_host_array, const MemoryCopy check_safety=MemoryCopy::RANGE_CHECK) |
template<typename T > | |
void | copyHost2DeviceArray (const T *source_host_array, const stdgpu::index64_t count, T *destination_device_array, const MemoryCopy check_safety=MemoryCopy::RANGE_CHECK) |
template<typename T > | |
void | copyHost2HostArray (const T *source_host_array, const stdgpu::index64_t count, T *destination_host_array, const MemoryCopy check_safety=MemoryCopy::RANGE_CHECK) |
template<typename T > | |
T * | createDeviceArray (const stdgpu::index64_t count, const T default_value=T()) |
template<typename T > | |
T * | createHostArray (const stdgpu::index64_t count, const T default_value=T()) |
template<typename T > | |
T * | createManagedArray (const stdgpu::index64_t count, const T default_value=T(), const Initialization initialize_on=Initialization::DEVICE) |
template<typename T > | |
void | stdgpu::deregister_memory (T *p, index64_t n, dynamic_memory_type memory_type) |
template<typename ExecutionPolicy , typename Iterator , STDGPU_DETAIL_OVERLOAD_IF(is_execution_policy_v< remove_cvref_t< ExecutionPolicy > >) > | |
void | stdgpu::destroy (ExecutionPolicy &&policy, Iterator first, Iterator last) |
template<typename T > | |
STDGPU_HOST_DEVICE void | stdgpu::destroy_at (T *p) |
template<typename ExecutionPolicy , typename Iterator , typename Size , STDGPU_DETAIL_OVERLOAD_IF(is_execution_policy_v< remove_cvref_t< ExecutionPolicy > >) > | |
Iterator | stdgpu::destroy_n (ExecutionPolicy &&policy, Iterator first, Size n) |
template<typename T > | |
void | destroyDeviceArray (T *&device_array) |
template<typename T > | |
void | destroyHostArray (T *&host_array) |
template<typename T > | |
void | destroyManagedArray (T *&managed_array) |
index64_t | stdgpu::get_allocation_count (dynamic_memory_type memory_type) |
index64_t | stdgpu::get_deallocation_count (dynamic_memory_type memory_type) |
template<typename T > | |
dynamic_memory_type | stdgpu::get_dynamic_memory_type (T *array) |
template<typename T > | |
void | stdgpu::register_memory (T *p, index64_t n, dynamic_memory_type memory_type) |
template<typename T > | |
index64_t | stdgpu::size_bytes (T *array) |
template<typename Ptr > | |
STDGPU_HOST_DEVICE auto | stdgpu::to_address (const Ptr &p) noexcept |
template<typename T > | |
STDGPU_HOST_DEVICE T * | stdgpu::to_address (T *p) noexcept |
template<typename ExecutionPolicy , typename InputIt , typename OutputIt , STDGPU_DETAIL_OVERLOAD_IF(is_execution_policy_v< remove_cvref_t< ExecutionPolicy > >) > | |
OutputIt | stdgpu::uninitialized_copy (ExecutionPolicy &&policy, InputIt begin, InputIt end, OutputIt output_begin) |
template<typename ExecutionPolicy , typename InputIt , typename Size , typename OutputIt , STDGPU_DETAIL_OVERLOAD_IF(is_execution_policy_v< remove_cvref_t< ExecutionPolicy > >) > | |
OutputIt | stdgpu::uninitialized_copy_n (ExecutionPolicy &&policy, InputIt begin, Size n, OutputIt output_begin) |
template<typename ExecutionPolicy , typename Iterator , typename T , STDGPU_DETAIL_OVERLOAD_IF(is_execution_policy_v< remove_cvref_t< ExecutionPolicy > >) > | |
void | stdgpu::uninitialized_fill (ExecutionPolicy &&policy, Iterator begin, Iterator end, const T &value) |
template<typename ExecutionPolicy , typename Iterator , typename Size , typename T , STDGPU_DETAIL_OVERLOAD_IF(is_execution_policy_v< remove_cvref_t< ExecutionPolicy > >) > | |
Iterator | stdgpu::uninitialized_fill_n (ExecutionPolicy &&policy, Iterator begin, Size n, const T &value) |
Variables | |
constexpr null_object_t | stdgpu::null_object |
Generated by 1.9.6