12 #include <type_traits>
14 #if defined(ALPAKA_ACC_GPU_CUDA_ENABLED) || defined(ALPAKA_ACC_GPU_HIP_ENABLED)
24 # if !defined(ALPAKA_HOST_ONLY)
26 # if defined(ALPAKA_ACC_GPU_CUDA_ENABLED) && !BOOST_LANG_CUDA
27 # error If ALPAKA_ACC_GPU_CUDA_ENABLED is set, the compiler has to support CUDA!
30 # if defined(ALPAKA_ACC_GPU_HIP_ENABLED) && !BOOST_LANG_HIP
31 # error If ALPAKA_ACC_GPU_HIP_ENABLED is set, the compiler has to support HIP!
36 template<
typename T, std::
size_t TuniqueId>
41 __shared__ uint8_t shMem
alignas(
alignof(T))[
sizeof(T)];
42 return *(
reinterpret_cast<T*
>(shMem));
The alpaka accelerator library.
Tag used in class inheritance hierarchies that describes that a specific interface (TInterface) is im...
The block shared static memory variable allocation operation trait.
The block shared static memory free operation trait.