56 template<concepts::IdxTraversing T_Traverse = traverse::Flat, concepts::IdxMapping T_IdxLayout = layout::Optimized>
62 T_IdxLayout idxLayout = T_IdxLayout{})
64 return internal::MakeIter::
74 template<concepts::IdxTraversing T_Traverse = traverse::Flat, concepts::IdxMapping T_IdxLayout = layout::Optimized>
81 T_IdxLayout idxLayout = T_IdxLayout{})
85 return internal::MakeIter::
110 typename T_ScalarIdxType,
115 auto const workGroup,
118 T_IdxLayout idxLayout = T_IdxLayout{})
120 return internal::MakeIter::Op<
135 auto const workGroup,
136 alpaka::concepts::IdxRange
auto const range,
140 return internal::MakeIter::
150 typename T_ScalarIdxType,
155 auto const workGroup,
156 alpaka::concepts::IdxRange
auto const range,
160 return internal::MakeIter::Op<
#define ALPAKA_FN_HOST_ACC
All functions that can be used on an accelerator have to be attributed with ALPAKA_FN_ACC or ALPAKA_F...
#define ALPAKA_TYPEOF(...)
Get the type of instance.
Concept checking whether T is a boundary direction.
functionality which is usable on the accelerator compute device from within a kernel.
ALPAKA_FN_HOST_ACC constexpr auto makeIdxMap(auto const &acc, auto const workGroup, auto const range, T_Traverse traverse=T_Traverse{}, T_IdxLayout idxLayout=T_IdxLayout{})
Creates an index container.
constexpr auto makeDirectionSubRange(auto const range, alpaka::BoundaryDirection< T_dim, T_LowHaloVec, T_UpHaloVec > const &boundaryDir)
The index layout will automatically selected based on the executor.
Linearize the index domain for traversing.
Traversing the index domain with MD-tiles.