|
preCICE
|
Utility class for managing intra-participant communication operations. More...
#include <IntraComm.hpp>
Static Public Member Functions | |
| static void | configure (Rank rank, int size) |
| Configures the intra-participant communication. | |
| static Rank | getRank () |
| Current rank. | |
| static int | getSize () |
| Number of ranks. This includes ranks from both participants, e.g. minimal size is 2. | |
| static com::PtrCommunication & | getCommunication () |
| Intra-participant communication. | |
| static auto | allSecondaryRanks () |
| Returns an iterable range over salve ranks [1, _size). | |
| static auto | allRanks () |
| Returns an iterable range over all ranks [0, _size). | |
| static bool | isPrimary () |
| True if this process is running the primary rank. | |
| static bool | isSecondary () |
| True if this process is running a secondary rank. | |
| static bool | isParallel () |
| True if this process is running in parallel. | |
| static double | l2norm (const Eigen::VectorXd &vec) |
| The l2 norm of a vector is calculated on distributed data. | |
| static double | dot (const Eigen::VectorXd &vec1, const Eigen::VectorXd &vec2) |
| static void | reset () |
| static void | reduceSum (precice::span< const double > sendData, precice::span< double > rcvData) |
| static void | reduceSum (const int &sendData, int &rcvData) |
| static void | reduceSum (const double &sendData, double &rcvData) |
| static void | allreduceSum (precice::span< const double > sendData, precice::span< double > rcvData) |
| static void | allreduceSum (double &sendData, double &rcvData) |
| static void | allreduceSum (int &sendData, int &rcvData) |
| static void | broadcast (bool &value) |
| static void | broadcast (double &value) |
| static void | broadcast (int &value) |
| static void | broadcast (precice::span< double > values) |
| static void | synchronize () |
| static bool | willSynchronize () |
| static void | barrier () |
| Synchronizes all ranks. | |
Static Private Attributes | |
| static logging::Logger | _log |
| static Rank | _rank = -1 |
| Current rank. | |
| static int | _size = -1 |
| Number of ranks. This includes ranks from both participants, e.g. minimal size is 2. | |
| static bool | _isPrimaryRank = false |
| True if this process is running the primary rank. | |
| static bool | _isSecondaryRank = false |
| True if this process is running a secondary rank. | |
| static com::PtrCommunication | _communication |
| Intra-participant communication. | |
Utility class for managing intra-participant communication operations.
Definition at line 19 of file IntraComm.hpp.
|
inlinestatic |
Returns an iterable range over all ranks [0, _size).
Definition at line 43 of file IntraComm.hpp.
|
static |
Definition at line 225 of file IntraComm.cpp.
|
static |
Definition at line 248 of file IntraComm.cpp.
|
static |
Definition at line 202 of file IntraComm.cpp.
|
inlinestatic |
Returns an iterable range over salve ranks [1, _size).
Definition at line 37 of file IntraComm.hpp.
|
static |
Synchronizes all ranks.
Definition at line 373 of file IntraComm.cpp.
|
static |
Definition at line 293 of file IntraComm.cpp.
|
static |
Definition at line 315 of file IntraComm.cpp.
|
static |
Definition at line 337 of file IntraComm.cpp.
|
static |
Definition at line 271 of file IntraComm.cpp.
|
static |
Configures the intra-participant communication.
Definition at line 31 of file IntraComm.cpp.
|
static |
Definition at line 102 of file IntraComm.cpp.
|
inlinestatic |
Intra-participant communication.
Definition at line 31 of file IntraComm.hpp.
|
static |
Current rank.
Definition at line 42 of file IntraComm.cpp.
|
static |
Number of ranks. This includes ranks from both participants, e.g. minimal size is 2.
Definition at line 47 of file IntraComm.cpp.
|
static |
True if this process is running in parallel.
Definition at line 62 of file IntraComm.cpp.
|
static |
True if this process is running the primary rank.
Definition at line 52 of file IntraComm.cpp.
|
static |
True if this process is running a secondary rank.
Definition at line 57 of file IntraComm.cpp.
|
static |
The l2 norm of a vector is calculated on distributed data.
Definition at line 67 of file IntraComm.cpp.
|
static |
Definition at line 172 of file IntraComm.cpp.
|
static |
Definition at line 179 of file IntraComm.cpp.
|
static |
Definition at line 149 of file IntraComm.cpp.
|
static |
Definition at line 140 of file IntraComm.cpp.
|
static |
Synchronizes all ranks if syncMode is enabled
Definition at line 359 of file IntraComm.cpp.
|
static |
Does @synchronize have an effect?
Definition at line 368 of file IntraComm.cpp.
|
staticprivate |
Intra-participant communication.
Definition at line 115 of file IntraComm.hpp.
|
staticprivate |
True if this process is running the primary rank.
Definition at line 109 of file IntraComm.hpp.
|
staticprivate |
True if this process is running a secondary rank.
Definition at line 112 of file IntraComm.hpp.
|
staticprivate |
Definition at line 100 of file IntraComm.hpp.
|
staticprivate |
Current rank.
Definition at line 103 of file IntraComm.hpp.
|
staticprivate |
Number of ranks. This includes ranks from both participants, e.g. minimal size is 2.
Definition at line 106 of file IntraComm.hpp.