Shortcuts

Template Struct ExecParams

Struct Documentation

template<typename Impl>
struct ripple::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 auto size() 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 auto size(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 auto size(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, typename T>
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 auto allocation_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.

Docs

Access comprehensive developer documentation for Ripple

View Docs

Tutorials

Get tutorials to help with understand all features

View Tutorials

Examples

Find examples to help get started

View Examples