Convenience wrapper around MPI_Comm.
Plus de détails...
#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/alina/arccore/alina/MessagePassingUtils.h>
|
| | mpi_communicator (MPI_Comm comm) |
| |
| | operator MPI_Comm () const |
| |
| template<typename T> |
| std::vector< T > | exclusive_sum (T n) const |
| | Exclusive sum over mpi communicator.
|
| |
| std::complex< long double > | reduceSum (const std::complex< long double > &lval) const |
| |
| std::complex< double > | reduceSum (const std::complex< double > &lval) const |
| |
| std::complex< float > | reduceSum (const std::complex< float > &lval) const |
| |
| template<typename T> |
| T | reduceSum (const T &lval) const |
| |
| void | waitAll (ArrayView< MessagePassing::Request > requests) const |
| |
| void | wait (MessagePassing::Request request) const |
| |
| template<class Condition, class Message> |
| void | check (const Condition &cond, const Message &message) |
| | Communicator-wise condition checking.
|
| |
| template<typename T> |
| MessagePassing::Request | doIReceive (T *buf, int count, int source, int tag) const |
| |
| template<typename T> |
| void | doReceive (T *buf, int count, int source, int tag) const |
| |
| template<typename T> |
| MessagePassing::Request | doISend (const T *buf, int count, int dest, int tag) const |
| |
| template<typename T> |
| void | doSend (const T *buf, int count, int dest, int tag) const |
| |
|
| template<typename T> |
| T | _reduce (MPI_Op op, const T &lval) const |
| |
| template<typename T> |
| std::complex< T > | _reduceSumForComplex (const std::complex< T > &lval) const |
| |
Convenience wrapper around MPI_Comm.
Définition à la ligne 199 du fichier MessagePassingUtils.h.
◆ mpi_communicator()
| Arcane::Alina::mpi_communicator::mpi_communicator |
( |
MPI_Comm | comm | ) |
|
|
inlineexplicit |
◆ _reduce()
template<typename T>
| T Arcane::Alina::mpi_communicator::_reduce |
( |
MPI_Op | op, |
|
|
const T & | lval ) const |
|
inlineprivate |
◆ _reduceSumForComplex()
template<typename T>
| std::complex< T > Arcane::Alina::mpi_communicator::_reduceSumForComplex |
( |
const std::complex< T > & | lval | ) |
const |
|
inlineprivate |
◆ check()
template<class Condition, class Message>
| void Arcane::Alina::mpi_communicator::check |
( |
const Condition & | cond, |
|
|
const Message & | message ) |
|
inline |
Communicator-wise condition checking.
Checks conditions at each process in the communicator;
If the condition is false on any of the participating processes, outputs the provided message together with the ranks of the offending process. After that each process in the communicator throws.
Définition à la ligne 271 du fichier MessagePassingUtils.h.
Références ARCCORE_FATAL.
◆ doIReceive()
template<typename T>
| MessagePassing::Request Arcane::Alina::mpi_communicator::doIReceive |
( |
T * | buf, |
|
|
int | count, |
|
|
int | source, |
|
|
int | tag ) const |
|
inline |
◆ doISend()
template<typename T>
| MessagePassing::Request Arcane::Alina::mpi_communicator::doISend |
( |
const T * | buf, |
|
|
int | count, |
|
|
int | dest, |
|
|
int | tag ) const |
|
inline |
◆ doReceive()
template<typename T>
| void Arcane::Alina::mpi_communicator::doReceive |
( |
T * | buf, |
|
|
int | count, |
|
|
int | source, |
|
|
int | tag ) const |
|
inline |
◆ doSend()
template<typename T>
| void Arcane::Alina::mpi_communicator::doSend |
( |
const T * | buf, |
|
|
int | count, |
|
|
int | dest, |
|
|
int | tag ) const |
|
inline |
◆ exclusive_sum()
template<typename T>
| std::vector< T > Arcane::Alina::mpi_communicator::exclusive_sum |
( |
T | n | ) |
const |
|
inline |
◆ operator MPI_Comm()
| Arcane::Alina::mpi_communicator::operator MPI_Comm |
( |
| ) |
const |
|
inline |
◆ reduceSum() [1/4]
| std::complex< double > Arcane::Alina::mpi_communicator::reduceSum |
( |
const std::complex< double > & | lval | ) |
const |
|
inline |
◆ reduceSum() [2/4]
| std::complex< float > Arcane::Alina::mpi_communicator::reduceSum |
( |
const std::complex< float > & | lval | ) |
const |
|
inline |
◆ reduceSum() [3/4]
| std::complex< long double > Arcane::Alina::mpi_communicator::reduceSum |
( |
const std::complex< long double > & | lval | ) |
const |
|
inline |
◆ reduceSum() [4/4]
template<typename T>
| T Arcane::Alina::mpi_communicator::reduceSum |
( |
const T & | lval | ) |
const |
|
inline |
◆ wait()
◆ waitAll()
◆ comm
| MPI_Comm Arcane::Alina::mpi_communicator::comm = MPI_COMM_NULL |
◆ m_message_passing_mng
◆ rank
| int Arcane::Alina::mpi_communicator::rank = 0 |
◆ size
| int Arcane::Alina::mpi_communicator::size = 0 |
La documentation de cette structure a été générée à partir du fichier suivant :