56 template<
typename T_QueueKind>
57 struct IsQueueKind : std::is_base_of<detail::QueueKindBase, T_QueueKind>
62 template<
typename T_QueueKind>
73 template<
typename T_QueueKind>
107 return "NonBlocking";
118 struct DeviceKindBase
125 template<
typename T_DeviceKind>
126 struct IsDeviceKind : std::is_base_of<detail::DeviceKindBase, T_DeviceKind>
131 template<
typename T_DeviceKind>
144 template<
typename T_DeviceKind>
157 return !(lhs == rhs);
160 struct Cpu : detail::DeviceKindBase
225 template<
typename T_Layer>
226 struct IsLayer : std::is_base_of<detail::LayerBase, T_Layer>
231 template<
typename T_Layer>
243 template<
typename T_Layer>
278 template<
typename T_Executor>
284 template<
typename T_Exec>
292 template<
typename T_Exec>
295 alpaka::unused(
exec);
#define ALPAKA_TYPEOF(...)
Get the type of instance.
Concept to check if something is a device kind.
Concept to check for a compute layer of an accelerator.
Concept to check if a type is a queue kind.
constexpr auto allDevices
constexpr bool operator==(concepts::DeviceKind auto lhs, concepts::DeviceKind auto rhs)
constexpr bool operator!=(concepts::DeviceKind auto lhs, concepts::DeviceKind auto rhs)
constexpr bool isDeviceKind_v
constexpr bool isSeqExecutor_v
constexpr WarpSize warpSize
constexpr DeviceKind deviceKind
constexpr bool operator!=(alpaka::concepts::QueueKind auto lhs, alpaka::concepts::QueueKind auto rhs)
constexpr auto nonBlocking
constexpr bool operator==(alpaka::concepts::QueueKind auto lhs, alpaka::concepts::QueueKind auto rhs)
constexpr bool isQueueKind_v
consteval bool isSeqExecutor(T_Exec exec)
check if a executor can only be used with a single thread per block
static std::string getName()
static std::string getName()
static std::string getName()
static std::string getName()
static std::string getName()
Queue should block during the task execution.
static std::string getName()
Queue should process task asynchronously.
static std::string getName()