Superviseur en mémoire partagé avec initialisation MPI. Plus de détails...
Fonctions membres publiques | |
MpiSharedMemoryParallelSuperMng (const ServiceBuildInfo &sbi) | |
void | build () override |
Construit les membres l'instance. | |
Fonctions membres publiques hérités de Arcane::MessagePassing::SharedMemoryParallelSuperMng | |
SharedMemoryParallelSuperMng (const ServiceBuildInfo &sbi) | |
SharedMemoryParallelSuperMng (const ServiceBuildInfo &sbi, Parallel::Communicator communicator, bool has_mpi_init) | |
void | initialize () override |
Initialise l'instance. | |
void | build () override |
Construit les membres l'instance. | |
IApplication * | application () const override |
Retourne le gestionnaire principal. | |
IThreadMng * | threadMng () const override |
Gestionnaire de thread. | |
bool | isParallel () const override |
Retourne true si l'exécution est parallèle. | |
Int32 | commRank () const override |
Retourne le numéro du process (compris entre 0 et nbProcess()-1) | |
Int32 | commSize () const override |
Retourne le nombre total de process utilisés. | |
Int32 | traceRank () const override |
Rang de cette instance pour les traces. | |
void * | getMPICommunicator () override |
Adresse du communicateur MPI associé à ce gestionnaire. | |
Parallel::Communicator | communicator () const override |
Communicateur MPI associé à ce gestionnaire. | |
Ref< IParallelMng > | internalCreateWorldParallelMng (Int32 local_rank) override |
Créé un gestionnaire de parallélisme pour l'ensemble des coeurs alloués. | |
void | tryAbort () override |
Tente de faire un abort. | |
bool | isMasterIO () const override |
true si l'instance est un gestionnaire maître des entrées/sorties. | |
Int32 | masterIORank () const override |
Rang de l'instance gérant les entrées/sorties (pour laquelle isMasterIO() est vrai) | |
Int32 | nbLocalSubDomain () override |
Nombre de sous-domaines à créér localement. | |
void | barrier () override |
Gestionnaire de parallèlisme pour l'ensemble des ressources allouées. | |
void | broadcast (ByteArrayView send_buf, Int32 rank) override |
void | broadcast (Int32ArrayView send_buf, Int32 rank) override |
void | broadcast (Int64ArrayView send_buf, Int32 rank) override |
void | broadcast (RealArrayView send_buf, Int32 rank) override |
Fonctions membres publiques hérités de Arcane::IParallelSuperMng | |
virtual | ~IParallelSuperMng () |
Libère les ressources. | |
virtual void | broadcast (ByteArrayView send_buf, Integer process_id)=0 |
Envoie un tableau de valeurs sur tous les processus Cette opération synchronise le tableau de valeur send_buf sur tous les processus. Le tableau utilisé est celui du processus dont l'identifiant (processId()) est process_id. Tous les processus doivent appelés cette méthode avec le même paramètre process_id et avoir un tableau send_buf contenant le même nombre d'éléments. | |
virtual void | broadcast (Int32ArrayView send_buf, Integer process_id)=0 |
virtual void | broadcast (Int64ArrayView send_buf, Integer process_id)=0 |
virtual void | broadcast (RealArrayView send_buf, Integer process_id)=0 |
Membres hérités additionnels | |
Types publics hérités de Arcane::IParallelSuperMng | |
typedef Parallel::Request | Request |
typedef Parallel::eReduceType | eReduceType |
Attributs publics hérités de Arcane::MessagePassing::SharedMemoryParallelSuperMng | |
IApplication * | m_application |
Gestionnaire principal. | |
Parallel::IStat * | m_stat |
bool | m_is_parallel |
Statistiques. | |
SharedMemoryParallelMngContainer * | m_container = nullptr |
Ref< IParallelMngContainerFactory > | m_builder_factory |
Ref< IParallelMngContainer > | m_main_builder |
Parallel::Communicator | m_communicator |
bool | m_has_mpi_init = false |
Superviseur en mémoire partagé avec initialisation MPI.
Cela permet de se comporter comme en mode mémoire partagé mais avec mais avec un communicateur MPI qui existe.
Définition à la ligne 546 du fichier HybridParallelSuperMng.cc.
|
inlineexplicit |
Définition à la ligne 550 du fichier HybridParallelSuperMng.cc.
|
inlineoverride |
Définition à la ligne 557 du fichier HybridParallelSuperMng.cc.
|
inlineoverridevirtual |
Construit les membres l'instance.
L'instance n'est pas utilisable tant que cette méthode n'a pas été appelée. Cette méthode doit être appelée avant initialize().
Implémente Arcane::IParallelSuperMng.
Définition à la ligne 562 du fichier HybridParallelSuperMng.cc.
Références Arcane::MessagePassing::SharedMemoryParallelSuperMng::build().