Arcane  v4.1.7.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::ParallelMngInternal

Partie interne de IParallelMng. Plus de détails...

#include <arcane/core/internal/ParallelMngInternal.h>

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

Fonctions membres publiques

 ParallelMngInternal (ParallelMngDispatcher *pm)
 
Runner runner () const override
 Runner par défaut. Peut être nul.
 
RunQueue queue () const override
 File par défaut pour les messages. Peut être nul.
 
bool isAcceleratorAware () const override
 Indique si l'implémentation gère les accélérateurs.
 
Ref< IParallelMngcreateSubParallelMngRef (Int32 color, Int32 key) override
 Créé un sous IParallelMng de manière similaire à MPI_Comm_split.
 
void setDefaultRunner (const Runner &runner) override
 
Int32 masterParallelIORank () const override
 
Int32 nbSendersToMasterParallelIO () const override
 
void initializeWindowCreator () override
 Méthode permettant d'initialiser le windowCreator spécifique à l'implémentation.
 
bool isMachineShMemWinAvailable () override
 Méthode permettant de savoir si le mode mémoire partagée est supporté.
 
Ref< MessagePassing::IContigMachineShMemWinBaseInternalcreateContigMachineShMemWinBase (Int64 sizeof_segment, Int32 sizeof_type) override
 Méthode permettant de créer une fenêtre mémoire sur le noeud.
 
Ref< MessagePassing::IMachineShMemWinBaseInternalcreateMachineShMemWinBase (Int64 sizeof_segment, Int32 sizeof_type) override
 Méthode permettant de créer une fenêtre mémoire dynamique sur le noeud.
 
MemoryAllocationOptions machineShMemWinMemoryAllocator () override
 Méthode permettant de récupérer un allocateur en mémoire partagée.
 
ConstArrayView< Int32machineRanks () override
 Méthode permettant de récupérer les rangs des sous-domaines du noeud de calcul.
 
void machineBarrier () override
 Méthode permettant de faire une barrière pour les sous-domaines du noeud de calcul.
 

Attributs privés

ParallelMngDispatcherm_parallel_mng = nullptr
 
Runner m_runner
 
RunQueue m_queue
 
bool m_is_accelerator_aware_disabled = false
 

Description détaillée

Partie interne de IParallelMng.

Définition à la ligne 40 du fichier ParallelMngInternal.h.

Documentation des constructeurs et destructeur

◆ ParallelMngInternal()

Arcane::ParallelMngInternal::ParallelMngInternal ( ParallelMngDispatcher * pm)
explicit

Définition à la ligne 35 du fichier ParallelMngInternal.cc.

Documentation des fonctions membres

◆ createContigMachineShMemWinBase()

Ref< MessagePassing::IContigMachineShMemWinBaseInternal > Arcane::ParallelMngInternal::createContigMachineShMemWinBase ( Int64 sizeof_segment,
Int32 sizeof_type )
overridevirtual

Méthode permettant de créer une fenêtre mémoire sur le noeud.

Appel collectif.

Paramètres
sizeof_segmentLa taille de notre segment (en octet).
sizeof_typeLa taille d'un élément du segment (en octet).
Renvoie
Une référence vers la nouvelle fenêtre.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 146 du fichier ParallelMngInternal.cc.

Références ARCANE_THROW.

◆ createMachineShMemWinBase()

Ref< MessagePassing::IMachineShMemWinBaseInternal > Arcane::ParallelMngInternal::createMachineShMemWinBase ( Int64 sizeof_segment,
Int32 sizeof_type )
overridevirtual

Méthode permettant de créer une fenêtre mémoire dynamique sur le noeud.

Appel collectif.

Paramètres
sizeof_segmentLa taille initiale de notre segment (en octet).
sizeof_typeLa taille d'un élément du segment (en octet).
Renvoie
Une référence vers la nouvelle fenêtre.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 156 du fichier ParallelMngInternal.cc.

Références ARCANE_THROW.

◆ createSubParallelMngRef()

Ref< IParallelMng > Arcane::ParallelMngInternal::createSubParallelMngRef ( Int32 color,
Int32 key )
overridevirtual

Créé un sous IParallelMng de manière similaire à MPI_Comm_split.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 119 du fichier ParallelMngInternal.cc.

◆ initializeWindowCreator()

void Arcane::ParallelMngInternal::initializeWindowCreator ( )
overridevirtual

Méthode permettant d'initialiser le windowCreator spécifique à l'implémentation.

Appel collectif.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 128 du fichier ParallelMngInternal.cc.

Références ARCANE_THROW.

◆ isAcceleratorAware()

bool Arcane::ParallelMngInternal::isAcceleratorAware ( ) const
overridevirtual

Indique si l'implémentation gère les accélérateurs.

Si c'est le cas on peut utiliser directement la mémoire de l'accélérateur dans les appels MPI ce qui permet d'éviter d'éventuelles recopies.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 66 du fichier ParallelMngInternal.cc.

◆ isMachineShMemWinAvailable()

bool Arcane::ParallelMngInternal::isMachineShMemWinAvailable ( )
overridevirtual

Méthode permettant de savoir si le mode mémoire partagée est supporté.

Appel collectif.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 137 du fichier ParallelMngInternal.cc.

◆ machineBarrier()

void Arcane::ParallelMngInternal::machineBarrier ( )
overridevirtual

Méthode permettant de faire une barrière pour les sous-domaines du noeud de calcul.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 184 du fichier ParallelMngInternal.cc.

Références ARCANE_THROW.

◆ machineRanks()

ConstArrayView< Int32 > Arcane::ParallelMngInternal::machineRanks ( )
overridevirtual

Méthode permettant de récupérer les rangs des sous-domaines du noeud de calcul.

Appel non collectif.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 175 du fichier ParallelMngInternal.cc.

Références ARCANE_THROW.

◆ machineShMemWinMemoryAllocator()

MemoryAllocationOptions Arcane::ParallelMngInternal::machineShMemWinMemoryAllocator ( )
overridevirtual

Méthode permettant de récupérer un allocateur en mémoire partagée.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 166 du fichier ParallelMngInternal.cc.

Références ARCANE_THROW.

◆ masterParallelIORank()

Int32 Arcane::ParallelMngInternal::masterParallelIORank ( ) const
overridevirtual

Donne l'écrivain dans le cas où l'on peut écrire en parallèle (avec MPI-IO par exemple).

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 101 du fichier ParallelMngInternal.cc.

◆ nbSendersToMasterParallelIO()

Int32 Arcane::ParallelMngInternal::nbSendersToMasterParallelIO ( ) const
overridevirtual

Donne le nombre de proc qui vont envoyer des données à masterParallelIORank().

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 110 du fichier ParallelMngInternal.cc.

◆ queue()

RunQueue Arcane::ParallelMngInternal::queue ( ) const
overridevirtual

File par défaut pour les messages. Peut être nul.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 57 du fichier ParallelMngInternal.cc.

◆ runner()

Runner Arcane::ParallelMngInternal::runner ( ) const
overridevirtual

Runner par défaut. Peut être nul.

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 48 du fichier ParallelMngInternal.cc.

◆ setDefaultRunner()

void Arcane::ParallelMngInternal::setDefaultRunner ( const Runner & runner)
overridevirtual

Implémente Arcane::IParallelMngInternal.

Définition à la ligne 81 du fichier ParallelMngInternal.cc.

Documentation des données membres

◆ m_is_accelerator_aware_disabled

bool Arcane::ParallelMngInternal::m_is_accelerator_aware_disabled = false
private

Définition à la ligne 71 du fichier ParallelMngInternal.h.

◆ m_parallel_mng

ParallelMngDispatcher* Arcane::ParallelMngInternal::m_parallel_mng = nullptr
private

Définition à la ligne 68 du fichier ParallelMngInternal.h.

◆ m_queue

RunQueue Arcane::ParallelMngInternal::m_queue
private

Définition à la ligne 70 du fichier ParallelMngInternal.h.

◆ m_runner

Runner Arcane::ParallelMngInternal::m_runner
private

Définition à la ligne 69 du fichier ParallelMngInternal.h.


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