Kokkos Core Kernels Package  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | List of all members
Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type Struct Reference

Parallel execution of a functor calls the functor once with each member of the execution policy. More...

#include <Kokkos_ExecPolicy.hpp>

Public Member Functions

KOKKOS_INLINE_FUNCTION
traits::execution_space::scratch_memory_space 
team_shmem () const
 Handle to the currently executing team shared scratch memory. More...
 
KOKKOS_INLINE_FUNCTION int league_rank () const
 Rank of this team within the league of teams. More...
 
KOKKOS_INLINE_FUNCTION int league_size () const
 Number of teams in the league. More...
 
KOKKOS_INLINE_FUNCTION int team_rank () const
 Rank of this thread within this team. More...
 
KOKKOS_INLINE_FUNCTION int team_size () const
 Number of threads in this team. More...
 
KOKKOS_INLINE_FUNCTION void team_barrier () const
 Barrier among the threads of this team. More...
 
template<class JoinOp >
KOKKOS_INLINE_FUNCTION
JoinOp::value_type 
team_reduce (const typename JoinOp::value_type, const JoinOp &) const
 Intra-team reduction. Returns join of all values of the team members. More...
 
template<typename Type >
KOKKOS_INLINE_FUNCTION Type team_scan (const Type &value) const
 Intra-team exclusive prefix sum with team_rank() ordering. More...
 
template<typename Type >
KOKKOS_INLINE_FUNCTION Type team_scan (const Type &value, Type *const global_accum) const
 Intra-team exclusive prefix sum with team_rank() ordering with intra-team non-deterministic ordering accumulation. More...
 

Detailed Description

template<class ExecSpace, class... Properties>
struct Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type

Parallel execution of a functor calls the functor once with each member of the execution policy.

Definition at line 451 of file Kokkos_ExecPolicy.hpp.

Member Function Documentation

template<class ExecSpace, class... Properties>
KOKKOS_INLINE_FUNCTION traits::execution_space::scratch_memory_space Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::team_shmem ( ) const

Handle to the currently executing team shared scratch memory.

template<class ExecSpace, class... Properties>
KOKKOS_INLINE_FUNCTION int Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::league_rank ( ) const

Rank of this team within the league of teams.

template<class ExecSpace, class... Properties>
KOKKOS_INLINE_FUNCTION int Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::league_size ( ) const

Number of teams in the league.

template<class ExecSpace, class... Properties>
KOKKOS_INLINE_FUNCTION int Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::team_rank ( ) const

Rank of this thread within this team.

template<class ExecSpace, class... Properties>
KOKKOS_INLINE_FUNCTION int Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::team_size ( ) const

Number of threads in this team.

template<class ExecSpace, class... Properties>
KOKKOS_INLINE_FUNCTION void Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::team_barrier ( ) const

Barrier among the threads of this team.

template<class ExecSpace, class... Properties>
template<class JoinOp >
KOKKOS_INLINE_FUNCTION JoinOp::value_type Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::team_reduce ( const typename JoinOp::value_type  ,
const JoinOp &   
) const

Intra-team reduction. Returns join of all values of the team members.

template<class ExecSpace, class... Properties>
template<typename Type >
KOKKOS_INLINE_FUNCTION Type Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::team_scan ( const Type &  value) const

Intra-team exclusive prefix sum with team_rank() ordering.

The highest rank thread can compute the reduction total as reduction_total = dev.team_scan( value ) + value ;

template<class ExecSpace, class... Properties>
template<typename Type >
KOKKOS_INLINE_FUNCTION Type Kokkos::Impl::TeamPolicyInternal< ExecSpace, Properties >::member_type::team_scan ( const Type &  value,
Type *const  global_accum 
) const

Intra-team exclusive prefix sum with team_rank() ordering with intra-team non-deterministic ordering accumulation.

The global inter-team accumulation value will, at the end of the league's parallel execution, be the scan's total. Parallel execution ordering of the league's teams is non-deterministic. As such the base value for each team's scan operation is similarly non-deterministic.


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