CPPuddle
Loading...
Searching...
No Matches
recycler::hip_aggregated_device_buffer< T, Host_Allocator, > Struct Template Reference

#include <hip_recycling_device_buffer.hpp>

Public Member Functions

 hip_aggregated_device_buffer (size_t number_of_elements, Host_Allocator &alloc)
 hip_aggregated_device_buffer (hip_aggregated_device_buffer const &other)=delete
 hip_aggregated_device_buffer (hip_aggregated_device_buffer const &&other)=delete
 ~hip_aggregated_device_buffer ()
hip_aggregated_device_buffer operator= (hip_aggregated_device_buffer const &other)=delete
hip_aggregated_device_buffer operator= (hip_aggregated_device_buffer const &&other)=delete

Public Attributes

T * device_side_buffer
size_t number_of_elements

Detailed Description

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
struct recycler::hip_aggregated_device_buffer< T, Host_Allocator, >

RAII wrapper for CUDA device memory using a passed aggregated allocator (which ideally should be an allocator_slice from the work aggregation)

Constructor & Destructor Documentation

◆ hip_aggregated_device_buffer() [1/3]

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
cppuddle::memory_recycling::hip_aggregated_device_buffer< T, Host_Allocator, >::hip_aggregated_device_buffer ( size_t number_of_elements,
Host_Allocator & alloc )
inline

◆ hip_aggregated_device_buffer() [2/3]

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
cppuddle::memory_recycling::hip_aggregated_device_buffer< T, Host_Allocator, >::hip_aggregated_device_buffer ( hip_aggregated_device_buffer< T, Host_Allocator, > const & other)
delete

◆ hip_aggregated_device_buffer() [3/3]

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
cppuddle::memory_recycling::hip_aggregated_device_buffer< T, Host_Allocator, >::hip_aggregated_device_buffer ( hip_aggregated_device_buffer< T, Host_Allocator, > const && other)
delete

◆ ~hip_aggregated_device_buffer()

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
cppuddle::memory_recycling::hip_aggregated_device_buffer< T, Host_Allocator, >::~hip_aggregated_device_buffer ( )
inline

Member Function Documentation

◆ operator=() [1/2]

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
hip_aggregated_device_buffer cppuddle::memory_recycling::hip_aggregated_device_buffer< T, Host_Allocator, >::operator= ( hip_aggregated_device_buffer< T, Host_Allocator, > const && other)
delete

◆ operator=() [2/2]

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
hip_aggregated_device_buffer cppuddle::memory_recycling::hip_aggregated_device_buffer< T, Host_Allocator, >::operator= ( hip_aggregated_device_buffer< T, Host_Allocator, > const & other)
delete

Member Data Documentation

◆ device_side_buffer

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
T* cppuddle::memory_recycling::hip_aggregated_device_buffer< T, Host_Allocator, >::device_side_buffer

◆ number_of_elements

template<typename T, typename Host_Allocator, std::enable_if_t< std::is_trivial< T >::value, int > = 0>
size_t cppuddle::memory_recycling::hip_aggregated_device_buffer< T, Host_Allocator, >::number_of_elements

The documentation for this struct was generated from the following file: