CPPuddle
Classes | Namespaces | Typedefs
cuda_recycling_allocators.hpp File Reference
#include "buffer_management_interface.hpp"
#include "detail/cuda_underlying_allocators.hpp"
Include dependency graph for cuda_recycling_allocators.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  cppuddle::memory_recycling::device_selection::select_device_functor< T, detail::cuda_pinned_allocator< T > >
 GPU device selector using the CUDA API for pinned host allocations. More...
 
struct  cppuddle::memory_recycling::device_selection::select_device_functor< T, detail::cuda_device_allocator< T > >
 GPU selector using the CUDA API for pinned host allocations. More...
 

Namespaces

 cppuddle
 
 cppuddle::memory_recycling
 CPPuddle namespace containing the memory recycling functionality.
 
 cppuddle::memory_recycling::device_selection
 

Typedefs

template<typename T , std::enable_if_t< std::is_trivial< T >::value, int > = 0>
using cppuddle::memory_recycling::recycle_allocator_cuda_host = detail::aggressive_recycle_allocator< T, detail::cuda_pinned_allocator< T > >
 Recycling allocator for CUDA pinned host memory. More...
 
template<typename T , std::enable_if_t< std::is_trivial< T >::value, int > = 0>
using cppuddle::memory_recycling::recycle_allocator_cuda_device = detail::recycle_allocator< T, detail::cuda_device_allocator< T > >
 Recycling allocator for CUDA device memory. More...
 

Detailed Description

Contains the CUDA recycling allocators (in the form of type aliases) for both pinned host memory and device memory. Also contains the required device selector for MultiGPU setups with these allocators.