-
Notifications
You must be signed in to change notification settings - Fork 45
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Convert StdInclusiveScan from md to rst: fix
- Loading branch information
1 parent
70f1b8d
commit 4e07c94
Showing
2 changed files
with
228 additions
and
166 deletions.
There are no files selected for viewing
166 changes: 0 additions & 166 deletions
166
docs/source/API/algorithms/std-algorithms/all/StdInclusiveScan.md
This file was deleted.
Oops, something went wrong.
228 changes: 228 additions & 0 deletions
228
docs/source/API/algorithms/std-algorithms/all/StdInclusiveScan.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,228 @@ | ||
``inclusive_scan`` | ||
================== | ||
|
||
Header: ``Kokkos_StdAlgorithms.hpp`` | ||
|
||
Description | ||
----------- | ||
|
||
Computes an inclusive prefix scan over a range or a ``view_from`` using the binary op ``bin_op`` to combine two elements, and ``init`` as the initial value, and writes the results to the range beginning at ``first_dest`` or to ``view_dest``. | ||
Inclusive means that the i-th input element is included in the i-th sum. | ||
|
||
Interface | ||
--------- | ||
|
||
.. warning:: This is currently inside the ``Kokkos::Experimental`` namespace. | ||
|
||
.. code-block:: cpp | ||
// | ||
// overload set A | ||
// | ||
template <class ExecutionSpace, class InputIteratorType, class OutputIteratorType> | ||
OutputIteratorType inclusive_scan(const ExecutionSpace& exespace, (1) | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest); | ||
template <class ExecutionSpace, class InputIteratorType, class OutputIteratorType> | ||
OutputIteratorType inclusive_scan(const std::string& label, (2) | ||
const ExecutionSpace& exespace, | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest); | ||
template < | ||
class ExecutionSpace, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2> | ||
auto inclusive_scan(const ExecutionSpace& exespace, (3) | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest); | ||
template < | ||
class ExecutionSpace, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2> | ||
auto inclusive_scan(const std::string& label, (4) | ||
const ExecutionSpace& exespace, | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest); | ||
template <class TeamHandleType, class InputIteratorType, class OutputIteratorType> | ||
KOKKOS_FUNCTION | ||
OutputIteratorType inclusive_scan(const TeamHandleType& teamHandle, (5) | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest); | ||
template < | ||
class TeamHandleType, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2> | ||
KOKKOS_FUNCTION | ||
auto inclusive_scan(const TeamHandleType& teamHandle, (6) | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest); | ||
// | ||
// overload set B | ||
// | ||
template < | ||
class ExecutionSpace, class InputIteratorType, | ||
class OutputIteratorType, class BinaryOp> | ||
OutputIteratorType inclusive_scan(const ExecutionSpace& exespace, (7) | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest, | ||
BinaryOp binary_op); | ||
template < | ||
class ExecutionSpace, class InputIteratorType, | ||
class OutputIteratorType, class BinaryOp> | ||
OutputIteratorType inclusive_scan(const std::string& label, (8) | ||
const ExecutionSpace& exespace, | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest, | ||
BinaryOp binary_op); | ||
template < | ||
class ExecutionSpace, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2, | ||
class BinaryOp> | ||
auto inclusive_scan(const ExecutionSpace& exespace, (9) | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest, | ||
BinaryOp binary_op); | ||
template < | ||
class ExecutionSpace, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2, | ||
class BinaryOp> | ||
auto inclusive_scan(const std::string& label, (10) | ||
const ExecutionSpace& exespace, | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest, | ||
BinaryOp binary_op); | ||
template < | ||
class TeamHandleType, class InputIteratorType, | ||
class OutputIteratorType, class BinaryOp> | ||
KOKKOS_FUNCTION | ||
OutputIteratorType inclusive_scan(const TeamHandleType& teamHandle, (11) | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest, | ||
BinaryOp binary_op); | ||
template < | ||
class TeamHandleType, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2, | ||
class BinaryOp> | ||
KOKKOS_FUNCTION | ||
auto inclusive_scan(const TeamHandleType& teamHandle, (12) | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest, | ||
BinaryOp binary_op); | ||
// | ||
// overload set C | ||
// | ||
template < | ||
class ExecutionSpace, | ||
class InputIteratorType, class OutputIteratorType, | ||
class BinaryOp, class ValueType> | ||
OutputIteratorType inclusive_scan(const ExecutionSpace& exespace, (13) | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest, | ||
BinaryOp binary_op, | ||
ValueType init_value); | ||
template < | ||
class ExecutionSpace, class InputIteratorType, | ||
class OutputIteratorType, class BinaryOp, class ValueType> | ||
OutputIteratorType inclusive_scan(const std::string& label, (14) | ||
const ExecutionSpace& exespace, | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest, | ||
BinaryOp binary_op, | ||
ValueType init_value); | ||
template < | ||
class ExecutionSpace, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2, | ||
class BinaryOp, class ValueType> | ||
auto inclusive_scan(const ExecutionSpace& exespace, (15) | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest, | ||
BinaryOp binary_op, | ||
ValueType init_value); | ||
template < | ||
class ExecutionSpace, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2, | ||
class BinaryOp, class ValueType> | ||
auto inclusive_scan(const std::string& label, (16) | ||
const ExecutionSpace& exespace, | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest, | ||
BinaryOp binary_op, | ||
ValueType init_value); | ||
template < | ||
class TeamHandleType, class InputIteratorType, | ||
class OutputIteratorType, class BinaryOp, class ValueType> | ||
KOKKOS_FUNCTION | ||
OutputIteratorType inclusive_scan(const TeamHandleType& teamHandle, (17) | ||
InputIteratorType first_from, | ||
InputIteratorType last_from, | ||
OutputIteratorType first_dest, | ||
BinaryOp binary_op, | ||
ValueType init_value); | ||
template < | ||
class TeamHandleType, | ||
class DataType1, class... Properties1, | ||
class DataType2, class... Properties2, | ||
class BinaryOp, class ValueType> | ||
KOKKOS_FUNCTION | ||
auto inclusive_scan(const TeamHandleType& teamHandle, (18) | ||
const Kokkos::View<DataType1, Properties1...>& view_from, | ||
const Kokkos::View<DataType2, Properties2...>& view_dest, | ||
BinaryOp binary_op, | ||
ValueType init_value); | ||
Parameters and Requirements | ||
~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
|
||
.. |ExclusiveScan| replace:: ``exclusive_scan`` | ||
.. _ExclusiveScan: ./StdExclusiveScan.html | ||
|
||
- ``exespace``, ``first_from``, ``first_last``, ``first_dest``, ``view_from``, ``view_dest``, ``bin_op``: same as in |ExclusiveScan|_ | ||
|
||
- ``teamHandle``: team handle instance given inside a parallel region when using a TeamPolicy | ||
|
||
- ``label``: string forwarded to internal parallel kernels for debugging purposes | ||
|
||
- 1: The default string is "Kokkos::inclusive_scan_default_functors_iterator_api" | ||
|
||
- 3: The default string is "Kokkos::inclusive_scan_default_functors_view_api" | ||
|
||
- 7, 13: The default string is "Kokkos::inclusive_scan_custom_functors_iterator_api" | ||
|
||
- 9, 15: The default string is "Kokkos::inclusive_scan_custom_functors_view_api" | ||
|
||
- NOTE: overloads accepting a team handle do not use a label internally | ||
|
||
Return Value | ||
~~~~~~~~~~~~ | ||
|
||
Iterator to the element *after* the last element written. |