Implémentation MPI de la gestion des 'ISerializeMessage'. Plus de détails...
#include <arccore/message_passing_mpi/MpiSerializeMessageList.h>
Classes | |
class | _SortMessages |
Fonctions membres publiques | |
MpiSerializeMessageList (MpiSerializeDispatcher *dispatcher) | |
void | addMessage (ISerializeMessage *msg) override |
Ajoute un message à la liste. | |
void | processPendingMessages () override |
Envoie les messages de la liste qui ne l'ont pas encore été. | |
Integer | waitMessages (eWaitType wait_type) override |
Ref< ISerializeMessage > | createAndAddMessage (MessageRank destination, ePointToPointMessageType type) override |
Request | _processOneMessageGlobalBuffer (internal::BasicSerializeMessage *msm, MessageRank source, MessageTag mpi_tag) |
Effectue la requête. Retourne une éventuelle requête si non nul. | |
Request | _processOneMessage (internal::BasicSerializeMessage *msm, MessageRank source, MessageTag mpi_tag) |
Effectue la requête. Retourne une éventuelle requête si non nul. | |
![]() | |
virtual | ~ISerializeMessageList () |
Libère les ressources. | |
virtual Integer | waitMessages (eWaitType wt)=0 |
Attend que les messages aient terminé leur exécution. | |
virtual Ref< ISerializeMessage > | createAndAddMessage (MessageRank destination, ePointToPointMessageType type)=0 |
Créé et ajoute un message de sérialisation. | |
Implémentation MPI de la gestion des 'ISerializeMessage'.
Définition à la ligne 57 du fichier MpiSerializeMessageList.h.
Arcane::MessagePassing::Mpi::MpiSerializeMessageList::MpiSerializeMessageList | ( | MpiSerializeDispatcher * | dispatcher | ) |
Définition à la ligne 90 du fichier MpiSerializeMessageList.cc.
Request Arcane::MessagePassing::Mpi::MpiSerializeMessageList::_processOneMessage | ( | internal::BasicSerializeMessage * | msm, |
MessageRank | source, | ||
MessageTag | mpi_tag | ||
) |
Effectue la requête. Retourne une éventuelle requête si non nul.
Définition à la ligne 368 du fichier MpiSerializeMessageList.cc.
Références _processOneMessageGlobalBuffer(), Arccore::ITraceMng::info(), et Arccore::MessagePassing::internal::BasicSerializeMessage::isSend().
Request Arcane::MessagePassing::Mpi::MpiSerializeMessageList::_processOneMessageGlobalBuffer | ( | internal::BasicSerializeMessage * | msm, |
MessageRank | source, | ||
MessageTag | mpi_tag | ||
) |
Effectue la requête. Retourne une éventuelle requête si non nul.
Définition à la ligne 386 du fichier MpiSerializeMessageList.cc.
Références Arccore::MessagePassing::internal::BasicSerializeMessage::destination(), Arccore::ITraceMng::info(), Arccore::Ref< InstanceType, ImplTagId >::isNull(), Arccore::MessagePassing::internal::BasicSerializeMessage::isSend(), et Arccore::MessagePassing::internal::BasicSerializeMessage::strategy().
Référencé par _processOneMessage().
|
overridevirtual |
Ajoute un message à la liste.
Le message n'est pas posté tant qu'aucun appel à processPendingMessages() n'a été effectué. L'utilisateur garde la propriété du message qui ne doit pas être détruit tant qu'il n'est pas terminé.
Implémente Arccore::MessagePassing::ISerializeMessageList.
Définition à la ligne 101 du fichier MpiSerializeMessageList.cc.
Références Arcane::MessagePassing::Mpi::MpiAdapter::commRank().
|
override |
Définition à la ligne 434 du fichier MpiSerializeMessageList.cc.
|
overridevirtual |
Envoie les messages de la liste qui ne l'ont pas encore été.
Cette méthode envoie les messages ajoutés via addMessage() qui ne l'ont pas encore été. Il n'est en général pas nécessaire d'appeler cette méthode car cele est fait automatiquement lors de l'appel à waitMessages().
Implémente Arccore::MessagePassing::ISerializeMessageList.
Définition à la ligne 116 du fichier MpiSerializeMessageList.cc.
Références Arcane::MessagePassing::Mpi::MpiSerializeDispatcher::sendSerializer().
|
override |
Définition à la ligne 196 du fichier MpiSerializeMessageList.cc.