20 template<
typename TAlignment>
28 template<
typename T,
typename TAlignment>
33 std::size_t
const& sizeElems) -> T*
35#if defined(ALPAKA_ACC_GPU_CUDA_ENABLED) || defined(ALPAKA_ACC_GPU_HIP_ENABLED)
46 constexpr size_t minAlignement = TAlignment::value;
53 template<
typename T,
typename TAlignment>
54 struct Free<T, AllocCpuAligned<TAlignment>>
56 ALPAKA_FN_HOST static auto free(AllocCpuAligned<TAlignment>
const& , T
const*
const ptr) ->
void
58#if defined(ALPAKA_ACC_GPU_CUDA_ENABLED) || defined(ALPAKA_ACC_GPU_HIP_ENABLED)
61 constexpr size_t minAlignement = TAlignment::value;
63 core::alignedFree(minAlignement,
const_cast<void*
>(
reinterpret_cast<void const*
>(ptr)));
The CPU boost aligned allocator.
ALPAKA_FN_INLINE ALPAKA_FN_HOST void alignedFree(size_t alignment, void *ptr)
ALPAKA_FN_INLINE ALPAKA_FN_HOST auto alignedAlloc(size_t alignment, size_t size) -> void *
The alpaka accelerator library.
ALPAKA_FN_HOST auto free(TAlloc const &alloc, T const *const ptr) -> void
Frees the memory identified by the given pointer.
ALPAKA_FN_HOST auto malloc(TAlloc const &alloc, std::size_t const &sizeElems) -> T *
Tag used in class inheritance hierarchies that describes that a specific interface (TInterface) is im...