diff --git a/docs/source/API/core/parallel-dispatch/parallel_for.rst b/docs/source/API/core/parallel-dispatch/parallel_for.rst index e369e4647..63fb8054a 100644 --- a/docs/source/API/core/parallel-dispatch/parallel_for.rst +++ b/docs/source/API/core/parallel-dispatch/parallel_for.rst @@ -54,6 +54,7 @@ Requirements Semantics --------- +* For every element of the iteration space defined in `policy` the functors operator is invoked exactly once, except for `TeamPolicy` and `TeamThreadRange` where the operator is invoked by each vector lane of the team and thread respectively. * Neither concurrency nor order of execution of iterations are guaranteed. * The call is potentially asynchronous. To guarantee a kernel has finished, a developer should call fence on the execution space on which the kernel is run. diff --git a/docs/source/API/core/parallel-dispatch/parallel_reduce.rst b/docs/source/API/core/parallel-dispatch/parallel_reduce.rst index 094d9415d..80c875827 100644 --- a/docs/source/API/core/parallel-dispatch/parallel_reduce.rst +++ b/docs/source/API/core/parallel-dispatch/parallel_reduce.rst @@ -113,6 +113,7 @@ Requirements: Semantics --------- +* For every element of the iteration space defined in `policy` the functors operator is invoked exactly once, except for `TeamPolicy` and `TeamThreadRange` where the operator is invoked by each vector lane of the team and thread respectively. * Neither concurrency nor order of execution are guaranteed. * The call is potentially asynchronous if the ``ReducerArgument`` is not a scalar type. * The ``ReducerArgument`` content will be overwritten, i.e. the value does not need to be initialized to the reduction-neutral element. diff --git a/docs/source/API/core/parallel-dispatch/parallel_scan.rst b/docs/source/API/core/parallel-dispatch/parallel_scan.rst index f95bd6877..16b1f89a8 100644 --- a/docs/source/API/core/parallel-dispatch/parallel_scan.rst +++ b/docs/source/API/core/parallel-dispatch/parallel_scan.rst @@ -58,6 +58,7 @@ Semantics * Neither concurrency nor order of execution are guaranteed. * The ``ReturnType`` content will be overwritten, i.e. the value does not need to be initialized to the reduction-neutral element. * The input value to the operator may contain a partial result, Kokkos may only combine the thread local contributions in the end. The operator should modify the input value according to the desired scan operation. +* For every element of the iteration space defined in `policy` the functors operator is invoked exactly once with ``final = true``,. * It is not guaranteed that the functor will ever be called with ``final = false``. * The functor might be called multiple times with ``final = false`` and the user has to make sure that the behavior in this case stays the same for repeated calls.