|
| template<class M, class... RR> |
| auto | mdiota_view (const M &m, RR... rr) |
| | Compute the Cartesian product of several intervals of integers.
|
| template<typename Policy, typename Lambda> |
| void | parallel_for (Policy &&p, Lambda &&lambda, const std::string &name="") |
| | Call a function on each element of a range, potentially in parallel.
|
| template<class R, class T, typename Policy, typename Lambda> |
| T | parallel_reduce (Policy &&p, Lambda &&lambda, const std::string &name="") |
| | Perform a reduction based on the elements of a range, potentially in parallel.
|
Local concurrent operations.
They use the default Kokkos execution space. To avoid unnecessary copies, one needs to pass a view since the ranges provided by the user are copied.
template<typename Policy, typename Lambda>
| void parallel_for |
( |
Policy && | p, |
|
|
Lambda && | lambda, |
|
|
const std::string & | name = "" ) |
Call a function on each element of a range, potentially in parallel.
If GPU support is available, lambda is executed there.
- Parameters
-
| p | sized random-access range |
| name | operation name, for debugging |
- Deprecated
- Use
accelerator::for_each.
template<class R, class T, typename Policy, typename Lambda>
| T parallel_reduce |
( |
Policy && | p, |
|
|
Lambda && | lambda, |
|
|
const std::string & | name = "" ) |
|
nodiscard |
Perform a reduction based on the elements of a range, potentially in parallel.
If GPU support is available, lambda is executed there.
- Template Parameters
-
| R | reduction operation type |
| T | data type |
| Lambda | function of an element of p and a function object that calls the latter with each value participating in the reduction |
- Parameters
-
| p | sized random-access range |
| name | operation name, for debugging |
- Deprecated
- Use
accelerator::reduce.