|
Kokkos Core Kernels Package
Version of the Day
|
Execution policy for parallel work over a league of teams of threads with explicit vector support. More...
#include <Kokkos_ExecPolicy.hpp>
Classes | |
| struct | member_type |
| Parallel execution of a functor calls the functor once with each member of the execution policy. More... | |
Public Types | |
| typedef Impl::ExecutionPolicyTag | kokkos_tag |
| Concept tag. | |
| typedef ExecSpace | execution_space |
| Execution space. | |
Public Member Functions | |
| TeamVectorPolicy (execution_space &, int league_size_request, int team_size_request) | |
| Construct policy with the given instance of the execution space. | |
| TeamVectorPolicy (int league_size_request, int team_size_request) | |
| Construct policy with the default instance of the execution space. | |
| KOKKOS_INLINE_FUNCTION int | league_size () const |
| The actual league size (number of teams) of the policy. | |
| KOKKOS_INLINE_FUNCTION int | team_size () const |
| The actual team size (number of threads per team) of the policy. | |
Static Public Member Functions | |
| template<class FunctorType > | |
| static int | team_size_max (const FunctorType &) |
| Query maximum team size for a given functor. | |
Execution policy for parallel work over a league of teams of threads with explicit vector support.
The work functor is called for each thread of each team such that the team's member threads are guaranteed to be concurrent.
The team's threads have access to team shared scratch memory and team collective operations.
If the WorkArgTag is non-void then the first calling argument of the work functor's parentheses operator is 'const WorkArgTag &'. This allows a functor to have multiple work member functions.
Definition at line 358 of file Kokkos_ExecPolicy.hpp.
| typedef Impl::ExecutionPolicyTag Kokkos::TeamVectorPolicy< VectorLength, Arg0, Arg1, ExecSpace >::kokkos_tag |
Concept tag.
Definition at line 368 of file Kokkos_ExecPolicy.hpp.
| typedef ExecSpace Kokkos::TeamVectorPolicy< VectorLength, Arg0, Arg1, ExecSpace >::execution_space |
Execution space.
Definition at line 369 of file Kokkos_ExecPolicy.hpp.
| Kokkos::TeamVectorPolicy< VectorLength, Arg0, Arg1, ExecSpace >::TeamVectorPolicy | ( | execution_space & | , |
| int | league_size_request, | ||
| int | team_size_request | ||
| ) |
Construct policy with the given instance of the execution space.
| Kokkos::TeamVectorPolicy< VectorLength, Arg0, Arg1, ExecSpace >::TeamVectorPolicy | ( | int | league_size_request, |
| int | team_size_request | ||
| ) |
Construct policy with the default instance of the execution space.
| static int Kokkos::TeamVectorPolicy< VectorLength, Arg0, Arg1, ExecSpace >::team_size_max | ( | const FunctorType & | ) | [static] |
Query maximum team size for a given functor.
This size takes into account execution space concurrency limitations and scratch memory space limitations for reductions, team reduce/scan, and team shared memory.
| KOKKOS_INLINE_FUNCTION int Kokkos::TeamVectorPolicy< VectorLength, Arg0, Arg1, ExecSpace >::league_size | ( | ) | const |
The actual league size (number of teams) of the policy.
This may be smaller than the requested league size due to limitations of the execution space.
| KOKKOS_INLINE_FUNCTION int Kokkos::TeamVectorPolicy< VectorLength, Arg0, Arg1, ExecSpace >::team_size | ( | ) | const |
The actual team size (number of threads per team) of the policy.
This may be smaller than the requested team size due to limitations of the execution space.
1.7.6.1