Arcane  4.2.3.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::AlinaLib::IMessagePassingMngabstract

Interface du gestionnaire des échanges de messages. Plus de détails...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/message_passing/arccore/message_passing/IMessagePassingMng.h>

Graphe d'héritage de Arcane::AlinaLib::IMessagePassingMng:
Graphe de collaboration de Arcane::AlinaLib::IMessagePassingMng:

Fonctions membres publiques

virtual Int32 commRank () const=0
 Rang de cette instance dans le communicateur.
virtual Int32 commSize () const=0
 Nombre d'instance dans le communicateur.
virtual ITimeMetricCollector * timeMetricCollector () const=0
 Interface pour collecter les temps d'exécution (peut être nul).
virtual ITraceMng * traceMng () const=0
 Gestionnaire de trace associé à cette instance.
virtual Communicator communicator () const
 Communicateur MPI associé à cette instance.
virtual IDispatchers * dispatchers ()=0

Fonctions membres privées

 ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS ()

Amis

void mpDelete (IMessagePassingMng *p)
 Détruit l'instance de passage de messages p.

Description détaillée

Interface du gestionnaire des échanges de messages.

Cette classe utilise une sémantique par référence et les instances sont automatiquement détruites lorsque cela est nécessaire.

La plupart des opérations sur cette classe utilisent des fonctions libres (comme mpSend() ou mpReceive()) qui sont définies dans le fichier 'Messages.h'.

Arcane fournit plusieurs implémentations pour le passage de messages, en utilisant MPI, le passage de messages en mémoire partagée ou le passage de messages hybride (MPI + mémoire partagée). Lorsqu'on utilise MPI, il est possible de créer une instance de cette classe en utilisant la classe StandaloneMpiMessagePassingMng.

Définition à la ligne 54 du fichier IMessagePassingMng.h.

Documentation des fonctions membres

◆ communicator()

Communicateur MPI associé à cette instance.

Le communicateur n'est valide que si l'instance est associée à une implémentation MPI. Vous pouvez convertir un communicateur en communicateur MPI en utilisant les méthodes d'aide toMpiCommunicator() et fillMpiCommunicatorIfValid() ou comme ceci :

IMessagePassingMng* mpm = ...;
Communicator comm = mpm->communicator();
if (comm.isValid())
MPI_Comm mpi_comm = static_cast<MPI_Comm>(comm).
Communicateur pour l'échange de message.
bool isValid() const
Indique si le communicateur est valide.
Interface du gestionnaire des échanges de messages.
virtual Communicator communicator() const
Communicateur MPI associé à cette instance.

Définition à la ligne 97 du fichier MessagePassingMng.cc.

◆ mpDelete

void mpDelete ( IMessagePassingMng * p)
friend

Détruit l'instance de passage de messages p.

Avertissement
Ceci ne doit être utilisé qu'avec les fonctions obsolètes qui ne retournent pas d'instances de Ref<IMessagePassingMng> et retournent seulement un IMessagePassingMng*.

Définition à la ligne 89 du fichier MessagePassingMng.cc.


La documentation de cette classe a été générée à partir des fichiers suivants :