kokkos-execution 0.0.1
Loading...
Searching...
No Matches
Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer > Struct Template Reference

#include <parallel_reduce.hpp>

Public Types

using node_props_t = NodeProps
using device_handle_t = device_handle_of_t<NodeProps>
using execution_space = exec_of_t<device_handle_t>
using policy_t = Impl::make_policy_result_t<Impl::make_policy_t<execution_space>, ExecPolicyOrIterSpace&&>
template<NodeRef Predecessor>
using node_t

Public Member Functions

template<NodeRef Predecessor>
auto add_node (const Predecessor &predecessor) &&noexcept(false) -> node_t< Predecessor >

Public Attributes

node_props_t node_props
Functor functor
ExecPolicyOrIterSpace policy_or_iter_space
Reducer reducer

Detailed Description

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
struct Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >

Definition at line 22 of file parallel_reduce.hpp.

Member Typedef Documentation

◆ device_handle_t

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
using Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::device_handle_t = device_handle_of_t<NodeProps>

Definition at line 24 of file parallel_reduce.hpp.

◆ execution_space

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
using Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::execution_space = exec_of_t<device_handle_t>

Definition at line 25 of file parallel_reduce.hpp.

◆ node_props_t

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
using Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::node_props_t = NodeProps

Definition at line 23 of file parallel_reduce.hpp.

◆ node_t

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
template<NodeRef Predecessor>
using Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::node_t
Initial value:
decltype(std::declval<const Predecessor&>().then_parallel_reduce(
std::declval<node_props_t&&>(),
std::declval<policy_t&&>(),
std::declval<Functor&&>(),
std::declval<Reducer&&>()))

Definition at line 29 of file parallel_reduce.hpp.

◆ policy_t

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
using Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::policy_t = Impl::make_policy_result_t<Impl::make_policy_t<execution_space>, ExecPolicyOrIterSpace&&>

Definition at line 26 of file parallel_reduce.hpp.

Member Function Documentation

◆ add_node()

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
template<NodeRef Predecessor>
auto Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::add_node ( const Predecessor & predecessor) && -> node_t< Predecessor >
inline

Member Data Documentation

◆ functor

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
Functor Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::functor

Definition at line 54 of file parallel_reduce.hpp.

◆ node_props

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
node_props_t Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::node_props

Definition at line 53 of file parallel_reduce.hpp.

◆ policy_or_iter_space

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
ExecPolicyOrIterSpace Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::policy_or_iter_space

Definition at line 55 of file parallel_reduce.hpp.

◆ reducer

template<typename NodeProps, typename Functor, Impl::execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer>
Reducer Kokkos::Execution::GraphImpl::ParallelReduceClosure< NodeProps, Functor, ExecPolicyOrIterSpace, Reducer >::reducer

Definition at line 56 of file parallel_reduce.hpp.


The documentation for this struct was generated from the following file: