12#include "vecmem/memory/memory_resource.hpp"
13#include "vecmem/vecmem_cuda_export.hpp"
39 void*
do_allocate(std::size_t, std::size_t)
override;
An allocator class that wraps a memory resource.
Definition allocator.hpp:37
Memory resource that wraps managed CUDA allocation.
Definition managed_memory_resource.hpp:23
VECMEM_CUDA_EXPORT managed_memory_resource()
Default constructor.
VECMEM_CUDA_EXPORT void * do_allocate(std::size_t, std::size_t) override
Allocate CUDA managed memory.
Definition managed_memory_resource.cpp:28
VECMEM_CUDA_EXPORT bool do_is_equal(const memory_resource &other) const noexcept override
Compares *this for equality with other.
Definition managed_memory_resource.cpp:54
VECMEM_CUDA_EXPORT ~managed_memory_resource() override
Destructor.
VECMEM_CUDA_EXPORT void do_deallocate(void *p, std::size_t, std::size_t) override
De-allocate a previously allocated managed memory block.
Definition managed_memory_resource.cpp:41
Namespace holding types that work on/with CUDA.
Definition cuda_device_atomic_ref.hpp:19