Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::MpiBlockVariableSynchronizerDispatcher

Implémentation par block pour MPI de la synchronisation. Plus de détails...

+ Graphe d'héritage de Arcane::MpiBlockVariableSynchronizerDispatcher:
+ Graphe de collaboration de Arcane::MpiBlockVariableSynchronizerDispatcher:

Classes

class  Factory
 

Fonctions membres publiques

 MpiBlockVariableSynchronizerDispatcher (Factory *f)
 
void compute () override
 
void beginSynchronize (IDataSynchronizeBuffer *buf) override
 
void endSynchronize (IDataSynchronizeBuffer *buf) override
 
- Fonctions membres publiques hérités de Arcane::AbstractDataSynchronizeImplementation
void setDataSynchronizeInfo (DataSynchronizeInfo *sync_info) final
 

Fonctions membres privées

bool _isSkipRank (Int32 rank, Int32 sequence) const
 

Attributs privés

MpiParallelMngm_mpi_parallel_mng = nullptr
 
Ref< Parallel::IRequestListm_request_list
 
Int32 m_block_size
 
Int32 m_nb_sequence
 

Membres hérités additionnels

- Fonctions membres protégées hérités de Arcane::AbstractDataSynchronizeImplementation
DataSynchronizeInfo_syncInfo () const
 

Description détaillée

Implémentation par block pour MPI de la synchronisation.

Les messages sont envoyés par bloc d'une taille fixe.

NOTE: cette optimisation respecte la norme MPI qui dit qu'on ne doit plus toucher à la zone mémoire d'un message tant que celui-ci n'est pas fini.

Définition à la ligne 55 du fichier MpiBlockVariableSynchronizeDispatcher.cc.

Documentation des constructeurs et destructeur

◆ MpiBlockVariableSynchronizerDispatcher()

Arcane::MpiBlockVariableSynchronizerDispatcher::MpiBlockVariableSynchronizerDispatcher ( Factory f)
explicit

Définition à la ligne 121 du fichier MpiBlockVariableSynchronizeDispatcher.cc.

Documentation des fonctions membres

◆ _isSkipRank()

bool Arcane::MpiBlockVariableSynchronizerDispatcher::_isSkipRank ( Int32  rank,
Int32  sequence 
) const
private

Définition à la ligne 133 du fichier MpiBlockVariableSynchronizeDispatcher.cc.

◆ beginSynchronize()

void Arcane::MpiBlockVariableSynchronizerDispatcher::beginSynchronize ( IDataSynchronizeBuffer buf)
overridevirtual

◆ compute()

void Arcane::MpiBlockVariableSynchronizerDispatcher::compute ( )
inlineoverridevirtual

◆ endSynchronize()

void Arcane::MpiBlockVariableSynchronizerDispatcher::endSynchronize ( IDataSynchronizeBuffer buf)
overridevirtual

Documentation des données membres

◆ m_block_size

Int32 Arcane::MpiBlockVariableSynchronizerDispatcher::m_block_size
private

Définition à la ligne 73 du fichier MpiBlockVariableSynchronizeDispatcher.cc.

◆ m_mpi_parallel_mng

MpiParallelMng* Arcane::MpiBlockVariableSynchronizerDispatcher::m_mpi_parallel_mng = nullptr
private

Définition à la ligne 71 du fichier MpiBlockVariableSynchronizeDispatcher.cc.

◆ m_nb_sequence

Int32 Arcane::MpiBlockVariableSynchronizerDispatcher::m_nb_sequence
private

Définition à la ligne 74 du fichier MpiBlockVariableSynchronizeDispatcher.cc.

◆ m_request_list

Ref<Parallel::IRequestList> Arcane::MpiBlockVariableSynchronizerDispatcher::m_request_list
private

Définition à la ligne 72 du fichier MpiBlockVariableSynchronizeDispatcher.cc.


La documentation de cette classe a été générée à partir du fichier suivant :