|
Sierra Toolkit
Version of the Day
|
Typedefs | |
| typedef MPI_Comm | stk_classic::ParallelMachine |
| typedef MPI_Datatype | stk_classic::ParallelDatatype |
Functions | |
| ParallelMachine | stk_classic::parallel_machine_null () |
| parallel_machine_null returns MPI_COMM_NULL if MPI is enabled. | |
| ParallelMachine | stk_classic::parallel_machine_init (int *argc, char ***argv) |
| parallel_machine_init calls MPI_Init. | |
| void | stk_classic::parallel_machine_finalize () |
| parallel_machine_finalize calls MPI_Finalize. | |
| void | stk_classic::all_write_string (ParallelMachine, std::ostream &, const std::string &) |
| Write string from any or all processors to the ostream on the root processor. | |
| void | stk_classic::all_reduce_sum (ParallelMachine, const double *local, double *global, unsigned count) |
| Parallel summation to all processors. | |
| void | stk_classic::all_reduce_sum (ParallelMachine, const float *local, float *global, unsigned count) |
| Parallel summation to all processors. | |
| void | stk_classic::all_reduce_sum (ParallelMachine, const int *local, int *global, unsigned count) |
| Parallel summation to all processors. | |
| void | stk_classic::all_reduce_sum (ParallelMachine, const size_t *local, size_t *global, unsigned count) |
| Parallel summation to all processors. | |
| void | stk_classic::all_reduce_bor (ParallelMachine, const unsigned *local, unsigned *global, unsigned count) |
| Parallel bitwise-or to all processors. | |
| template<class ReduceOp > | |
| void | stk_classic::all_reduce (ParallelMachine, const ReduceOp &) |
| typedef MPI_Comm stk_classic::ParallelMachine |
Definition at line 32 of file Parallel.hpp.
| typedef MPI_Datatype stk_classic::ParallelDatatype |
Definition at line 36 of file Parallel.hpp.
| ParallelMachine stk_classic::parallel_machine_null | ( | ) | [inline] |
parallel_machine_null returns MPI_COMM_NULL if MPI is enabled.
Definition at line 43 of file Parallel.hpp.
| ParallelMachine stk_classic::parallel_machine_init | ( | int * | argc, |
| char *** | argv | ||
| ) | [inline] |
parallel_machine_init calls MPI_Init.
| argc | |
| argv |
Definition at line 54 of file Parallel.hpp.
| void stk_classic::all_write_string | ( | ParallelMachine | arg_comm, |
| std::ostream & | arg_root_os, | ||
| const std::string & | arg_msg | ||
| ) |
Write string from any or all processors to the ostream on the root processor.
Definition at line 23 of file ParallelReduce.cpp.
| void stk_classic::all_reduce | ( | ParallelMachine | , |
| const ReduceOp & | |||
| ) |
Aggregated parallel in-place reduce-to-all-processors operations.
example:
ParallelMachine comm = ... ;
double a[5] ;
int b[3] ;
all_reduce( comm , ReduceSum < 5 >( a ) & ReduceMax < 3 >( b ) ); Reduction options include:
ReduceSum < N > ( T * ) // Summation
ReduceProd < N > ( T * ) // Product
ReduceMax < N > ( T * ) // Maximum
ReduceMin < N > ( T * ) // Minimum
ReduceBitOr < N > ( T * ) // Bit-wise OR
ReduceBitAnd < N > ( T * ) // Bit-wise AND