Template Struct ExecParams¶
Defined in File execution_params.hpp
Struct Documentation¶
-
template<typename
Impl
>
structripple
::
ExecParams
¶ The ExecParams struct defines a static interface for all execution parameter implementations.
The ExecParams struct defines an interface for all execution parameter implementations.
The purpose of execution paramters are to customize the execution space and to efficiently create data and iterators over the data in the executin space for different configurations.
- Template Parameters
Impl
: The implementation of the interface.Impl
: The implementation of the interface.
Public Functions
-
template<size_t
Dims
>
constexpr autosize
() const noexcept¶ Gets the total size of the execution space, for the given number of dimensions.
- Return
The total number of elements in the execution space.
- Template Parameters
Dims
: The number of dimensions to get the size for.
-
template<size_t
Dims
>
constexpr autosize
(size_t padding) const noexcept¶ Gets the total size of the execution space, for Dims dimensions, with the given padding amount.
- Note
The size here refers to the number of elements.
- Return
The total number of elements, including padding.
- Parameters
padding
: The amount of padding for each side of each dimension.
- Template Parameters
Dims
: The number of dimensions to get the size for.
-
template<typename
Dim
>
constexpr autosize
(Dim &&dim) const noexcept -> size_t¶ Gets the size of the space in the given dimension.
- Return
The size of the given dimension.
- Parameters
dim
: The dimension to get the size of the space for.
- Template Parameters
Dim
: The type of the dimension specifier.
-
constexpr auto
padding
() const noexcept -> size_t¶ Gets the amount of padding for the execution space, per side of each dimension.
- Return
The amount of padding for a side of a dimension in the space.
-
template<size_t
Dims
, typenameT
>
decltype(auto)iterator
(T *data) const noexcept¶ Gets an iterator over a memory space pointed to by the data, for a given number of dimensions.
- Return
An iterator over the execution space which iterates over elements of the given type.
- Parameters
data
: A pointer to the memory space data.
- Template Parameters
Dims
: The number of dimensions for the iterator.T
: The type of the data to create the iterator over.
-
template<size_t
Dims
>
constexpr autoallocation_size
() const noexcept -> size_t¶ Gets the number of bytes required to allocator data for the space, for the given number of dimensions.
- Template Parameters
Dims
: The number of dimensions to allocate for.