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

Gestionnaire du parallélisme utilisant MPI. Plus de détails...

#include <arcane/parallel/mpi/MpiParallelMng.h>

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

Classes

class  RequestList
 Spécialisation de MpiRequestList pour MpiParallelMng. Plus de détails...
 

Fonctions membres publiques

 MpiParallelMng (const MpiParallelMngBuildInfo &bi)
 
bool isParallel () const override
 Retourne true si l'exécution est parallèle.
 
Int32 commRank () const override
 Rang de cette instance dans le communicateur.
 
Int32 commSize () const override
 Nombre d'instance dans le communicateur.
 
voidgetMPICommunicator () override
 Adresse du communicateur MPI associé à ce gestionnaire.
 
bool isThreadImplementation () const override
 Indique si l'implémentation utilise les threads.
 
bool isHybridImplementation () const override
 Indique si l'implémentation utilise le mode hybride.
 
ITraceMngtraceMng () const override
 Gestionnaire de traces.
 
IThreadMngthreadMng () const override
 Gestionnaire de threads.
 
IParallelMngworldParallelMng () const override
 Gestionnaire de parallélisme sur l'ensemble des ressources allouées.
 
IIOMngioMng () const override
 Gestionnaire des entrées/sorties.
 
void initialize () override
 Initialise le gestionnaire du parallélisme.
 
bool isMasterIO () const override
 true si l'instance est un gestionnaire maître des entrées/sorties.
 
Integer masterIORank () const override
 Rang de l'instance gérant les entrées/sorties (pour laquelle isMasterIO() est vrai)
 
ITimerMngtimerMng () const override
 Gestionnaire de timers.
 
void sendSerializer (ISerializer *values, Int32 rank) override
 
Request sendSerializer (ISerializer *values, Int32 rank, ByteArray &bytes) override
 
ISerializeMessagecreateSendSerializer (Int32 rank) override
 Créé un message non bloquant pour envoyer des données sérialisées au rang rank.
 
void recvSerializer (ISerializer *values, Int32 rank) override
 
ISerializeMessagecreateReceiveSerializer (Int32 rank) override
 Créé un message non bloquant pour recevoir des données sérialisées du rang rank.
 
void freeRequests (ArrayView< Parallel::Request > requests) override
 Libère les requêtes.
 
void broadcastSerializer (ISerializer *values, Int32 rank) override
 
MessageId probe (const PointToPointMessageInfo &message) override
 Sonde si des messages sont disponibles.
 
MessageSourceInfo legacyProbe (const PointToPointMessageInfo &message) override
 Sonde si des messages sont disponibles.
 
Request sendSerializer (const ISerializer *values, const PointToPointMessageInfo &message) override
 
Request receiveSerializer (ISerializer *values, const PointToPointMessageInfo &message) override
 
void printStats () override
 Affiche des statistiques liées à ce gestionnaire du parallélisme.
 
IParallelMngsequentialParallelMng () override
 Retourne un gestionnaire de parallélisme séquentiel.
 
Ref< IParallelMngsequentialParallelMngRef () override
 
void barrier () override
 Effectue une barière.
 
void waitAllRequests (ArrayView< Request > requests) override
 Bloque en attendant que les requêtes rvalues soient terminées.
 
UniqueArray< Integer > waitSomeRequests (ArrayView< Request > requests) override
 Bloque en attendant qu'une des requêtes rvalues soit terminée.
 
UniqueArray< Integer > testSomeRequests (ArrayView< Request > requests) override
 Test si une des requêtes rvalues est terminée.
 
ARCANE_DEPRECATED_260 Real reduceRank (eReduceType rt, Real v, Int32 *rank)
 
IParallelNonBlockingCollectivenonBlockingCollective () const override
 Interface des opérations collectives non blocantes.
 
void build () override
 Construit l'instance.
 
MpiAdapteradapter ()
 
Communicator communicator () const override
 Communicateur MPI associé à ce gestionnaire.
 
MpiLockmpiLock () const
 
MpiDatatypeListdatatypes ()
 
MpiSerializeDispatcherserializeDispatcher () const
 
IGetVariablesValuesParallelOperationcreateGetVariablesValuesOperation () override
 Retourne une opération pour récupérer les valeurs d'une variable sur les entités d'un autre sous-domaine.
 
ITransferValuesParallelOperationcreateTransferValuesOperation () override
 Retourne une opération pour transférer des valeurs entre sous-domaine.
 
IParallelExchangercreateExchanger () override
 Retourne une interface pour transférer des messages entre processeurs.
 
IParallelTopologycreateTopology () override
 Créé une instance contenant les infos sur la topologie des rangs de ce gestionnnaire.
 
IVariableSynchronizercreateSynchronizer (IItemFamily *family) override
 Retourne une interface pour synchroniser des variables sur le groupe de la famille family.
 
IVariableSynchronizercreateSynchronizer (const ItemGroup &group) override
 Retourne une interface pour synchroniser des variables sur le groupe group.
 
Parallel::IStatstat () override
 Gestionnaire des statistiques.
 
IParallelReplicationreplication () const override
 Informations sur la réplication.
 
void setReplication (IParallelReplication *v) override
 Positionne les Informations sur la réplication.
 
Ref< Parallel::IRequestListcreateRequestListRef () override
 Créé une liste de requêtes pour ce gestionnaire.
 
Ref< IParallelMngUtilsFactory_internalUtilsFactory () const override
 Fabrique des fonctions utilitaires.
 
- Fonctions membres publiques hérités de Arcane::ParallelMngDispatcher
 ARCCORE_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS ()
 
 ParallelMngDispatcher (const ParallelMngDispatcherBuildInfo &bi)
 
 ParallelMngDispatcher (const ParallelMngDispatcher &)=delete
 
 ParallelMngDispatcher (ParallelMngDispatcher &&)=delete
 
ParallelMngDispatcheroperator= (ParallelMngDispatcher &&)=delete
 
ParallelMngDispatcheroperator= (const ParallelMngDispatcher &)=delete
 
IMessagePassingMngmessagePassingMng () const override
 Gestionnaire de message de Arccore associé
 
void broadcastString (String &str, Int32 rank) override
 
void broadcastMemoryBuffer (ByteArray &bytes, Int32 rank) override
 Effectue un broadcast d'une zone mémoire.
 
void allGather (ISerializer *send_serializer, ISerializer *recv_serializer) override
 Redéfinit ici allGather pour éviter de cacher le symbole dans les classes dérivées.
 
virtual IParallelDispatchT< char > * dispatcher (char *)
 
virtual IParallelDispatchT< signed char > * dispatcher (signed char *)
 
virtual IParallelDispatchT< unsigned char > * dispatcher (unsigned char *)
 
virtual IParallelDispatchT< short > * dispatcher (short *)
 
virtual IParallelDispatchT< unsigned short > * dispatcher (unsigned short *)
 
virtual IParallelDispatchT< int > * dispatcher (int *)
 
virtual IParallelDispatchT< unsigned int > * dispatcher (unsigned int *)
 
virtual IParallelDispatchT< long > * dispatcher (long *)
 
virtual IParallelDispatchT< unsigned long > * dispatcher (unsigned long *)
 
virtual IParallelDispatchT< long long > * dispatcher (long long *)
 
virtual IParallelDispatchT< unsigned long long > * dispatcher (unsigned long long *)
 
virtual IParallelDispatchT< APReal > * dispatcher (APReal *)
 
virtual IParallelDispatchT< float > * dispatcher (float *)
 
virtual IParallelDispatchT< double > * dispatcher (double *)
 
virtual IParallelDispatchT< long double > * dispatcher (long double *)
 
virtual IParallelDispatchT< Real2 > * dispatcher (Real2 *)
 
virtual IParallelDispatchT< Real3 > * dispatcher (Real3 *)
 
virtual IParallelDispatchT< Real2x2 > * dispatcher (Real2x2 *)
 
virtual IParallelDispatchT< Real3x3 > * dispatcher (Real3x3 *)
 
virtual IParallelDispatchT< HPReal > * dispatcher (HPReal *)
 
template<class CreatorType >
void createDispatchers (CreatorType &ct)
 
ITimeStatstimeStats () const override
 Gestionnaire de statistiques associé (peut être nul)
 
void setTimeStats (ITimeStats *ts) override
 Positionne le gestionnaire de statistiques.
 
ITimeMetricCollectortimeMetricCollector () const override
 Collecteur Arccore des statistiques temporelles (peut être nul)
 
UniqueArray< Integer > waitSomeRequests (ArrayView< Request > requests) override
 Bloque en attendant qu'une des requêtes rvalues soit terminée.
 
UniqueArray< Integer > testSomeRequests (ArrayView< Request > requests) override
 Test si une des requêtes rvalues est terminée.
 
void processMessages (ConstArrayView< ISerializeMessage * > messages) override
 Exécute les opérations des messages messages.
 
ISerializeMessageListcreateSerializeMessageList () final
 Créé une liste pour gérer les 'ISerializeMessage'.
 
Ref< ISerializeMessageListcreateSerializeMessageListRef () final
 Créé une liste pour gérer les 'ISerializeMessage'.
 
IParallelMngcreateSubParallelMng (Int32ConstArrayView kept_ranks) final
 Créé un nouveau gestionnaire de parallélisme pour un sous-ensemble des rangs.
 
Ref< IParallelMngcreateSubParallelMngRef (Int32ConstArrayView kept_ranks) override
 Créé un nouveau gestionnaire de parallélisme pour un sous-ensemble des rangs.
 
IParallelMngInternal_internalApi () override
 API interne à Arcane.
 
- Fonctions membres publiques hérités de Arccore::ReferenceCounterImpl
void addReference ()
 
void removeReference ()
 
void _internalAddReference ()
 
bool _internalRemoveReference ()
 
- Fonctions membres publiques hérités de Arcane::IParallelMng
virtual ~IParallelMng ()=default
 Libère les ressources.
 
virtual ARCANE_DEPRECATED_120 voidmpiCommunicator ()
 Adresse du communicateur MPI associé à ce gestionnaire.
 
virtual void allGather (ConstArrayView< char > send_buf, ArrayView< char > recv_buf)=0
 Effectue un regroupement sur tous les processeurs. Il s'agit d'une opération collective. Le tableau send_buf doit avoir la même taille, notée n, pour tous les processeurs et le tableau recv_buf doit avoir une taille égale au nombre de processeurs multiplié par n.
 
virtual void allGather (ConstArrayView< unsigned char > send_buf, ArrayView< unsigned char > recv_buf)=0
 
virtual void allGather (ConstArrayView< signed char > send_buf, ArrayView< signed char > recv_buf)=0
 
virtual void allGather (ConstArrayView< short > send_buf, ArrayView< short > recv_buf)=0
 
virtual void allGather (ConstArrayView< unsigned short > send_buf, ArrayView< unsigned short > recv_buf)=0
 
virtual void allGather (ConstArrayView< int > send_buf, ArrayView< int > recv_buf)=0
 
virtual void allGather (ConstArrayView< unsigned int > send_buf, ArrayView< unsigned int > recv_buf)=0
 
virtual void allGather (ConstArrayView< long > send_buf, ArrayView< long > recv_buf)=0
 
virtual void allGather (ConstArrayView< unsigned long > send_buf, ArrayView< unsigned long > recv_buf)=0
 
virtual void allGather (ConstArrayView< long long > send_buf, ArrayView< long long > recv_buf)=0
 
virtual void allGather (ConstArrayView< unsigned long long > send_buf, ArrayView< unsigned long long > recv_buf)=0
 
virtual void allGather (ConstArrayView< float > send_buf, ArrayView< float > recv_buf)=0
 
virtual void allGather (ConstArrayView< double > send_buf, ArrayView< double > recv_buf)=0
 
virtual void allGather (ConstArrayView< long double > send_buf, ArrayView< long double > recv_buf)=0
 
virtual void allGather (ConstArrayView< APReal > send_buf, ArrayView< APReal > recv_buf)=0
 
virtual void allGather (ConstArrayView< Real2 > send_buf, ArrayView< Real2 > recv_buf)=0
 
virtual void allGather (ConstArrayView< Real3 > send_buf, ArrayView< Real3 > recv_buf)=0
 
virtual void allGather (ConstArrayView< Real2x2 > send_buf, ArrayView< Real2x2 > recv_buf)=0
 
virtual void allGather (ConstArrayView< Real3x3 > send_buf, ArrayView< Real3x3 > recv_buf)=0
 
virtual void allGather (ConstArrayView< HPReal > send_buf, ArrayView< HPReal > recv_buf)=0
 
virtual void gather (ConstArrayView< char > send_buf, ArrayView< char > recv_buf, Int32 rank)=0
 Effectue un regroupement sur un processeurs. Il s'agit d'une opération collective. Le tableau send_buf doit avoir la même taille, notée n, pour tous les processeurs et le tableau recv_buf pour le processeur rank doit avoir une taille égale au nombre de processeurs multiplié par n. Ce tableau recv_buf est inutilisé pour les autres rangs que rank.
 
virtual void gather (ConstArrayView< unsigned char > send_buf, ArrayView< unsigned char > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< signed char > send_buf, ArrayView< signed char > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< short > send_buf, ArrayView< short > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< unsigned short > send_buf, ArrayView< unsigned short > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< int > send_buf, ArrayView< int > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< unsigned int > send_buf, ArrayView< unsigned int > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< long > send_buf, ArrayView< long > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< unsigned long > send_buf, ArrayView< unsigned long > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< long long > send_buf, ArrayView< long long > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< unsigned long long > send_buf, ArrayView< unsigned long long > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< float > send_buf, ArrayView< float > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< double > send_buf, ArrayView< double > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< long double > send_buf, ArrayView< long double > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< APReal > send_buf, ArrayView< APReal > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< Real2 > send_buf, ArrayView< Real2 > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< Real3 > send_buf, ArrayView< Real3 > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< Real2x2 > send_buf, ArrayView< Real2x2 > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< Real3x3 > send_buf, ArrayView< Real3x3 > recv_buf, Int32 rank)=0
 
virtual void gather (ConstArrayView< HPReal > send_buf, ArrayView< HPReal > recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< char > send_buf, Array< char > &recv_buf, Int32 rank)=0
 Effectue un regroupement sur tous les processeurs.
 
virtual void gatherVariable (ConstArrayView< signed char > send_buf, Array< signed char > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< unsigned char > send_buf, Array< unsigned char > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< short > send_buf, Array< short > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< unsigned short > send_buf, Array< unsigned short > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< int > send_buf, Array< int > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< unsigned int > send_buf, Array< unsigned int > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< long > send_buf, Array< long > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< unsigned long > send_buf, Array< unsigned long > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< long long > send_buf, Array< long long > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< unsigned long long > send_buf, Array< unsigned long long > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< float > send_buf, Array< float > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< double > send_buf, Array< double > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< long double > send_buf, Array< long double > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< APReal > send_buf, Array< APReal > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< Real2 > send_buf, Array< Real2 > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< Real3 > send_buf, Array< Real3 > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< Real2x2 > send_buf, Array< Real2x2 > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< Real3x3 > send_buf, Array< Real3x3 > &recv_buf, Int32 rank)=0
 
virtual void gatherVariable (ConstArrayView< HPReal > send_buf, Array< HPReal > &recv_buf, Int32 rank)=0
 
virtual void allGatherVariable (ConstArrayView< char > send_buf, Array< char > &recv_buf)=0
 Effectue un regroupement sur tous les processeurs.
 
virtual void allGatherVariable (ConstArrayView< signed char > send_buf, Array< signed char > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< unsigned char > send_buf, Array< unsigned char > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< short > send_buf, Array< short > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< unsigned short > send_buf, Array< unsigned short > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< int > send_buf, Array< int > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< unsigned int > send_buf, Array< unsigned int > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< long > send_buf, Array< long > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< unsigned long > send_buf, Array< unsigned long > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< long long > send_buf, Array< long long > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< unsigned long long > send_buf, Array< unsigned long long > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< float > send_buf, Array< float > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< double > send_buf, Array< double > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< long double > send_buf, Array< long double > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< APReal > send_buf, Array< APReal > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< Real2 > send_buf, Array< Real2 > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< Real3 > send_buf, Array< Real3 > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< Real2x2 > send_buf, Array< Real2x2 > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< Real3x3 > send_buf, Array< Real3x3 > &recv_buf)=0
 
virtual void allGatherVariable (ConstArrayView< HPReal > send_buf, Array< HPReal > &recv_buf)=0
 
virtual void scatterVariable (ConstArrayView< char > send_buf, ArrayView< char > recv_buf, Integer root)=0
 Scinde un tableau sur plusieurs processeurs.
 
virtual void scatterVariable (ConstArrayView< signed char > send_buf, ArrayView< signed char > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< unsigned char > send_buf, ArrayView< unsigned char > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< short > send_buf, ArrayView< short > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< unsigned short > send_buf, ArrayView< unsigned short > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< int > send_buf, ArrayView< int > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< unsigned int > send_buf, ArrayView< unsigned int > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< long > send_buf, ArrayView< long > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< unsigned long > send_buf, ArrayView< unsigned long > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< long long > send_buf, ArrayView< long long > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< unsigned long long > send_buf, ArrayView< unsigned long long > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< float > send_buf, ArrayView< float > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< double > send_buf, ArrayView< double > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< long double > send_buf, ArrayView< long double > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< APReal > send_buf, ArrayView< APReal > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< Real2 > send_buf, ArrayView< Real2 > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< Real3 > send_buf, ArrayView< Real3 > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< Real2x2 > send_buf, ArrayView< Real2x2 > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< Real3x3 > send_buf, ArrayView< Real3x3 > recv_buf, Integer root)=0
 
virtual void scatterVariable (ConstArrayView< HPReal > send_buf, ArrayView< HPReal > recv_buf, Integer root)=0
 
virtual char reduce (eReduceType rt, char v)=0
 Effectue la réduction de type rt sur le réel v et retourne la valeur.
 
virtual signed char reduce (eReduceType rt, signed char v)=0
 
virtual unsigned char reduce (eReduceType rt, unsigned char v)=0
 
virtual short reduce (eReduceType rt, short v)=0
 
virtual unsigned short reduce (eReduceType rt, unsigned short v)=0
 
virtual int reduce (eReduceType rt, int v)=0
 
virtual unsigned int reduce (eReduceType rt, unsigned int v)=0
 
virtual long reduce (eReduceType rt, long v)=0
 
virtual unsigned long reduce (eReduceType rt, unsigned long v)=0
 
virtual long long reduce (eReduceType rt, long long v)=0
 
virtual unsigned long long reduce (eReduceType rt, unsigned long long v)=0
 
virtual float reduce (eReduceType rt, float v)=0
 
virtual double reduce (eReduceType rt, double v)=0
 
virtual long double reduce (eReduceType rt, long double v)=0
 
virtual APReal reduce (eReduceType rt, APReal v)=0
 
virtual Real2 reduce (eReduceType rt, Real2 v)=0
 
virtual Real3 reduce (eReduceType rt, Real3 v)=0
 
virtual Real2x2 reduce (eReduceType rt, Real2x2 v)=0
 
virtual Real3x3 reduce (eReduceType rt, Real3x3 v)=0
 
virtual HPReal reduce (eReduceType rt, HPReal v)=0
 
virtual void computeMinMaxSum (char val, char &min_val, char &max_val, char &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 Calcule en une opération la somme, le min, le max d'une valeur.
 
virtual void computeMinMaxSum (signed char val, signed char &min_val, signed char &max_val, signed char &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (unsigned char val, unsigned char &min_val, unsigned char &max_val, unsigned char &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (short val, short &min_val, short &max_val, short &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (unsigned short val, unsigned short &min_val, unsigned short &max_val, unsigned short &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (int val, int &min_val, int &max_val, int &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (unsigned int val, unsigned int &min_val, unsigned int &max_val, unsigned int &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (long val, long &min_val, long &max_val, long &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (unsigned long val, unsigned long &min_val, unsigned long &max_val, unsigned long &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (long long val, long long &min_val, long long &max_val, long long &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (unsigned long long val, unsigned long long &min_val, unsigned long long &max_val, unsigned long long &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (float val, float &min_val, float &max_val, float &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (double val, double &min_val, double &max_val, double &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (long double val, long double &min_val, long double &max_val, long double &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (APReal val, APReal &min_val, APReal &max_val, APReal &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (Real2 val, Real2 &min_val, Real2 &max_val, Real2 &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (Real3 val, Real3 &min_val, Real3 &max_val, Real3 &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (Real2x2 val, Real2x2 &min_val, Real2x2 &max_val, Real2x2 &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (Real3x3 val, Real3x3 &min_val, Real3x3 &max_val, Real3x3 &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (HPReal val, HPReal &min_val, HPReal &max_val, HPReal &sum_val, Int32 &min_rank, Int32 &max_rank)=0
 
virtual void computeMinMaxSum (ConstArrayView< char > values, ArrayView< char > min_values, ArrayView< char > max_values, ArrayView< char > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 Calcule en une opération la somme, le min, le max d'une valeur.
 
virtual void computeMinMaxSum (ConstArrayView< signed char > values, ArrayView< signed char > min_values, ArrayView< signed char > max_values, ArrayView< signed char > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< unsigned char > values, ArrayView< unsigned char > min_values, ArrayView< unsigned char > max_values, ArrayView< unsigned char > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< short > values, ArrayView< short > min_values, ArrayView< short > max_values, ArrayView< short > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< unsigned short > values, ArrayView< unsigned short > min_values, ArrayView< unsigned short > max_values, ArrayView< unsigned short > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< int > values, ArrayView< int > min_values, ArrayView< int > max_values, ArrayView< int > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< unsigned int > values, ArrayView< unsigned int > min_values, ArrayView< unsigned int > max_values, ArrayView< unsigned int > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< long > values, ArrayView< long > min_values, ArrayView< long > max_values, ArrayView< long > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< unsigned long > values, ArrayView< unsigned long > min_values, ArrayView< unsigned long > max_values, ArrayView< unsigned long > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< long long > values, ArrayView< long long > min_values, ArrayView< long long > max_values, ArrayView< long long > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< unsigned long long > values, ArrayView< unsigned long long > min_values, ArrayView< unsigned long long > max_values, ArrayView< unsigned long long > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< float > values, ArrayView< float > min_values, ArrayView< float > max_values, ArrayView< float > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< double > values, ArrayView< double > min_values, ArrayView< double > max_values, ArrayView< double > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< long double > values, ArrayView< long double > min_values, ArrayView< long double > max_values, ArrayView< long double > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< APReal > values, ArrayView< APReal > min_values, ArrayView< APReal > max_values, ArrayView< APReal > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< Real2 > values, ArrayView< Real2 > min_values, ArrayView< Real2 > max_values, ArrayView< Real2 > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< Real3 > values, ArrayView< Real3 > min_values, ArrayView< Real3 > max_values, ArrayView< Real3 > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< Real2x2 > values, ArrayView< Real2x2 > min_values, ArrayView< Real2x2 > max_values, ArrayView< Real2x2 > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< Real3x3 > values, ArrayView< Real3x3 > min_values, ArrayView< Real3x3 > max_values, ArrayView< Real3x3 > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void computeMinMaxSum (ConstArrayView< HPReal > values, ArrayView< HPReal > min_values, ArrayView< HPReal > max_values, ArrayView< HPReal > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks)=0
 
virtual void reduce (eReduceType rt, ArrayView< char > v)=0
 Effectue la réduction de type rt sur le tableau v.
 
virtual void reduce (eReduceType rt, ArrayView< signed char > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< unsigned char > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< short > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< unsigned short > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< int > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< unsigned int > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< long > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< unsigned long > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< long long > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< unsigned long long > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< float > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< double > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< long double > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< APReal > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< Real2 > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< Real3 > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< Real2x2 > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< Real3x3 > v)=0
 
virtual void reduce (eReduceType rt, ArrayView< HPReal > v)=0
 
virtual void broadcast (ArrayView< char > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< signed char > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< unsigned char > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< short > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< unsigned short > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< int > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< unsigned int > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< long > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< unsigned long > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< long long > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< unsigned long long > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< float > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< double > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< long double > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< APReal > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< Real2 > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< Real3 > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< Real2x2 > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< Real3x3 > send_buf, Int32 rank)=0
 
virtual void broadcast (ArrayView< HPReal > send_buf, Int32 rank)=0
 
virtual void send (ConstArrayView< char > values, Int32 rank)=0
 
virtual void send (ConstArrayView< signed char > values, Int32 rank)=0
 
virtual void send (ConstArrayView< unsigned char > values, Int32 rank)=0
 
virtual void send (ConstArrayView< short > values, Int32 rank)=0
 
virtual void send (ConstArrayView< unsigned short > values, Int32 rank)=0
 
virtual void send (ConstArrayView< int > values, Int32 rank)=0
 
virtual void send (ConstArrayView< unsigned int > values, Int32 rank)=0
 
virtual void send (ConstArrayView< long > values, Int32 rank)=0
 
virtual void send (ConstArrayView< unsigned long > values, Int32 rank)=0
 
virtual void send (ConstArrayView< long long > values, Int32 rank)=0
 
virtual void send (ConstArrayView< unsigned long long > values, Int32 rank)=0
 
virtual void send (ConstArrayView< float > values, Int32 rank)=0
 
virtual void send (ConstArrayView< double > values, Int32 rank)=0
 
virtual void send (ConstArrayView< long double > values, Int32 rank)=0
 
virtual void send (ConstArrayView< APReal > values, Int32 rank)=0
 
virtual void send (ConstArrayView< Real2 > values, Int32 rank)=0
 
virtual void send (ConstArrayView< Real3 > values, Int32 rank)=0
 
virtual void send (ConstArrayView< Real2x2 > values, Int32 rank)=0
 
virtual void send (ConstArrayView< Real3x3 > values, Int32 rank)=0
 
virtual void send (ConstArrayView< HPReal > values, Int32 rank)=0
 
virtual void recv (ArrayView< char > values, Int32 rank)=0
 
virtual void recv (ArrayView< signed char > values, Int32 rank)=0
 
virtual void recv (ArrayView< unsigned char > values, Int32 rank)=0
 
virtual void recv (ArrayView< short > values, Int32 rank)=0
 
virtual void recv (ArrayView< unsigned short > values, Int32 rank)=0
 
virtual void recv (ArrayView< int > values, Int32 rank)=0
 
virtual void recv (ArrayView< unsigned int > values, Int32 rank)=0
 
virtual void recv (ArrayView< long > values, Int32 rank)=0
 
virtual void recv (ArrayView< unsigned long > values, Int32 rank)=0
 
virtual void recv (ArrayView< long long > values, Int32 rank)=0
 
virtual void recv (ArrayView< unsigned long long > values, Int32 rank)=0
 
virtual void recv (ArrayView< float > values, Int32 rank)=0
 
virtual void recv (ArrayView< double > values, Int32 rank)=0
 
virtual void recv (ArrayView< long double > values, Int32 rank)=0
 
virtual void recv (ArrayView< APReal > values, Int32 rank)=0
 
virtual void recv (ArrayView< Real2 > values, Int32 rank)=0
 
virtual void recv (ArrayView< Real3 > values, Int32 rank)=0
 
virtual void recv (ArrayView< Real2x2 > values, Int32 rank)=0
 
virtual void recv (ArrayView< Real3x3 > values, Int32 rank)=0
 
virtual void recv (ArrayView< HPReal > values, Int32 rank)=0
 
virtual Request send (ConstArrayView< char > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< signed char > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< unsigned char > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< short > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< unsigned short > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< int > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< unsigned int > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< long > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< unsigned long > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< long long > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< unsigned long long > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< float > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< double > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< long double > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< APReal > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< Real2 > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< Real3 > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< Real2x2 > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< Real3x3 > values, Int32 rank, bool is_blocking)=0
 
virtual Request send (ConstArrayView< HPReal > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< char > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< signed char > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< unsigned char > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< short > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< unsigned short > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< int > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< unsigned int > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< long > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< unsigned long > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< long long > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< unsigned long long > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< float > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< double > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< long double > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< APReal > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< Real2 > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< Real3 > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< Real2x2 > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< Real3x3 > values, Int32 rank, bool is_blocking)=0
 
virtual Request recv (ArrayView< HPReal > values, Int32 rank, bool is_blocking)=0
 
virtual Request receive (Span< char > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< signed char > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< unsigned char > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< short > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< unsigned short > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< int > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< unsigned int > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< long > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< unsigned long > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< long long > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< unsigned long long > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< float > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< double > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< long double > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< APReal > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< Real2 > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< Real3 > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< Real2x2 > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< Real3x3 > values, const PointToPointMessageInfo &message)=0
 
virtual Request receive (Span< HPReal > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const char > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const signed char > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const unsigned char > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const short > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const unsigned short > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const int > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const unsigned int > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const long > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const unsigned long > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const long long > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const unsigned long long > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const float > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const double > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const long double > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const APReal > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const Real2 > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const Real3 > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const Real2x2 > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const Real3x3 > values, const PointToPointMessageInfo &message)=0
 
virtual Request send (Span< const HPReal > values, const PointToPointMessageInfo &message)=0
 
virtual void sendRecv (ConstArrayView< char > send_buf, ArrayView< char > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< signed char > send_buf, ArrayView< signed char > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< unsigned char > send_buf, ArrayView< unsigned char > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< short > send_buf, ArrayView< short > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< unsigned short > send_buf, ArrayView< unsigned short > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< int > send_buf, ArrayView< int > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< unsigned int > send_buf, ArrayView< unsigned int > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< long > send_buf, ArrayView< long > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< unsigned long > send_buf, ArrayView< unsigned long > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< long long > send_buf, ArrayView< long long > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< unsigned long long > send_buf, ArrayView< unsigned long long > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< float > send_buf, ArrayView< float > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< double > send_buf, ArrayView< double > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< long double > send_buf, ArrayView< long double > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< APReal > send_buf, ArrayView< APReal > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< Real2 > send_buf, ArrayView< Real2 > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< Real3 > send_buf, ArrayView< Real3 > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< Real2x2 > send_buf, ArrayView< Real2x2 > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< Real3x3 > send_buf, ArrayView< Real3x3 > recv_buf, Int32 rank)=0
 
virtual void sendRecv (ConstArrayView< HPReal > send_buf, ArrayView< HPReal > recv_buf, Int32 rank)=0
 
virtual void allToAll (ConstArrayView< char > send_buf, ArrayView< char > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< signed char > send_buf, ArrayView< signed char > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< unsigned char > send_buf, ArrayView< unsigned char > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< short > send_buf, ArrayView< short > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< unsigned short > send_buf, ArrayView< unsigned short > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< int > send_buf, ArrayView< int > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< unsigned int > send_buf, ArrayView< unsigned int > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< long > send_buf, ArrayView< long > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< unsigned long > send_buf, ArrayView< unsigned long > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< long long > send_buf, ArrayView< long long > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< unsigned long long > send_buf, ArrayView< unsigned long long > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< float > send_buf, ArrayView< float > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< double > send_buf, ArrayView< double > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< long double > send_buf, ArrayView< long double > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< APReal > send_buf, ArrayView< APReal > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< Real2 > send_buf, ArrayView< Real2 > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< Real3 > send_buf, ArrayView< Real3 > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< Real2x2 > send_buf, ArrayView< Real2x2 > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< Real3x3 > send_buf, ArrayView< Real3x3 > recv_buf, Integer count)=0
 
virtual void allToAll (ConstArrayView< HPReal > send_buf, ArrayView< HPReal > recv_buf, Integer count)=0
 
virtual void allToAllVariable (ConstArrayView< char > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< char > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< signed char > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< signed char > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< unsigned char > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< unsigned char > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< short > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< short > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< unsigned short > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< unsigned short > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< int > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< int > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< unsigned int > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< unsigned int > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< long > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< long > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< unsigned long > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< unsigned long > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< long long > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< long long > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< unsigned long long > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< unsigned long long > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< float > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< float > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< double > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< double > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< long double > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< long double > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< APReal > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< APReal > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< Real2 > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< Real2 > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< Real3 > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< Real3 > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< Real2x2 > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< Real2x2 > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< Real3x3 > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< Real3x3 > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void allToAllVariable (ConstArrayView< HPReal > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< HPReal > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index)=0
 
virtual void scan (eReduceType rt, ArrayView< char > v)=0
 Applique un algorithme de prefix-um sur les valeurs de v via l'opération rt.
 
virtual void scan (eReduceType rt, ArrayView< signed char > v)=0
 
virtual void scan (eReduceType rt, ArrayView< unsigned char > v)=0
 
virtual void scan (eReduceType rt, ArrayView< short > v)=0
 
virtual void scan (eReduceType rt, ArrayView< unsigned short > v)=0
 
virtual void scan (eReduceType rt, ArrayView< int > v)=0
 
virtual void scan (eReduceType rt, ArrayView< unsigned int > v)=0
 
virtual void scan (eReduceType rt, ArrayView< long > v)=0
 
virtual void scan (eReduceType rt, ArrayView< unsigned long > v)=0
 
virtual void scan (eReduceType rt, ArrayView< long long > v)=0
 
virtual void scan (eReduceType rt, ArrayView< unsigned long long > v)=0
 
virtual void scan (eReduceType rt, ArrayView< float > v)=0
 
virtual void scan (eReduceType rt, ArrayView< double > v)=0
 
virtual void scan (eReduceType rt, ArrayView< long double > v)=0
 
virtual void scan (eReduceType rt, ArrayView< APReal > v)=0
 
virtual void scan (eReduceType rt, ArrayView< Real2 > v)=0
 
virtual void scan (eReduceType rt, ArrayView< Real3 > v)=0
 
virtual void scan (eReduceType rt, ArrayView< Real2x2 > v)=0
 
virtual void scan (eReduceType rt, ArrayView< Real3x3 > v)=0
 
virtual void scan (eReduceType rt, ArrayView< HPReal > v)=0
 

Attributs publics

friend ArcaneMpiSerializeMessageList
 

Fonctions membres protégées

ISerializeMessageList_createSerializeMessageList () override
 
IParallelMng_createSubParallelMng (Int32ConstArrayView kept_ranks) override
 
bool _isAcceleratorAware () const override
 
Ref< IParallelMng_createSubParallelMngRef (Int32 color, Int32 key) override
 
- Fonctions membres protégées hérités de Arcane::ParallelMngDispatcher
MP::MessagePassingMng_messagePassingMng () const
 
UniqueArray< Integer > _doWaitRequests (ArrayView< Request > requests, Parallel::eWaitType wait_type)
 
TimeMetricAction _communicationTimeMetricAction () const
 
void _setControlDispatcher (MP::IControlDispatcher *d)
 
void _setSerializeDispatcher (MP::ISerializeDispatcher *d)
 

Fonctions membres privées

void _checkFinishedSubRequests ()
 
UniqueArray< Integer > _waitSomeRequests (ArrayView< Request > requests, bool is_non_blocking)
 
IParallelMng_createSubParallelMng (MPI_Comm sub_communicator)
 

Attributs privés

ITraceMngm_trace = nullptr
 
IThreadMngm_thread_mng = nullptr
 
IParallelMngm_world_parallel_mng = nullptr
 
IIOMngm_io_mng = nullptr
 
Ref< IParallelMngm_sequential_parallel_mng
 
ITimerMngm_timer_mng = nullptr
 
IParallelReplicationm_replication = nullptr
 
bool m_is_timer_owned = false
 
MpiDatatypeListm_datatype_list = nullptr
 
MpiAdapterm_adapter = nullptr
 
bool m_is_parallel = false
 
Int32 m_comm_rank = A_NULL_RANK
 Numéro du processeur actuel.
 
Int32 m_comm_size = 0
 Nombre de sous-domaines.
 
bool m_is_initialized = false
 true si déjà initialisé
 
Parallel::IStatm_stat = nullptr
 
MPI_Comm m_communicator = MPI_COMM_NULL
 
bool m_is_communicator_owned = false
 
MpiLockm_mpi_lock = nullptr
 
IParallelNonBlockingCollectivem_non_blocking_collective = nullptr
 
MpiSerializeDispatcherm_mpi_serialize_dispatcher = nullptr
 
Ref< IParallelMngUtilsFactorym_utils_factory
 
bool m_use_serialize_list_v2 = true
 

Membres hérités additionnels

- Types publics hérités de Arcane::IParallelMng
typedef Parallel::Request Request
 
using PointToPointMessageInfo = Parallel::PointToPointMessageInfo
 
using MessageId = Parallel::MessageId
 
using MessageSourceInfo = Parallel::MessageSourceInfo
 
typedef Parallel::eReduceType eReduceType
 
typedef Parallel::IStat IStat
 

Description détaillée

Gestionnaire du parallélisme utilisant MPI.

Définition à la ligne 79 du fichier MpiParallelMng.h.

Documentation des constructeurs et destructeur

◆ MpiParallelMng()

Arcane::MpiParallelMng::MpiParallelMng ( const MpiParallelMngBuildInfo bi)
explicit

Définition à la ligne 341 du fichier MpiParallelMng.cc.

◆ ~MpiParallelMng()

Arcane::MpiParallelMng::~MpiParallelMng ( )
override

Définition à la ligne 368 du fichier MpiParallelMng.cc.

Documentation des fonctions membres

◆ _checkFinishedSubRequests()

void Arcane::MpiParallelMng::_checkFinishedSubRequests ( )
private

Définition à la ligne 635 du fichier MpiParallelMng.cc.

◆ _createSerializeMessageList()

ISerializeMessageList * Arcane::MpiParallelMng::_createSerializeMessageList ( )
overrideprotectedvirtual

Implémente Arcane::ParallelMngDispatcher.

Définition à la ligne 724 du fichier MpiParallelMng.cc.

◆ _createSubParallelMng() [1/2]

IParallelMng * Arcane::MpiParallelMng::_createSubParallelMng ( Int32ConstArrayView  kept_ranks)
overrideprotectedvirtual

Implémente Arcane::ParallelMngDispatcher.

Définition à la ligne 849 du fichier MpiParallelMng.cc.

◆ _createSubParallelMng() [2/2]

IParallelMng * Arcane::MpiParallelMng::_createSubParallelMng ( MPI_Comm  sub_communicator)
private

Définition à la ligne 808 du fichier MpiParallelMng.cc.

◆ _createSubParallelMngRef()

Ref< IParallelMng > Arcane::MpiParallelMng::_createSubParallelMngRef ( Int32  color,
Int32  key 
)
overrideprotectedvirtual

Réimplémentée à partir de Arcane::ParallelMngDispatcher.

Définition à la ligne 835 du fichier MpiParallelMng.cc.

◆ _internalUtilsFactory()

Ref< IParallelMngUtilsFactory > Arcane::MpiParallelMng::_internalUtilsFactory ( ) const
overridevirtual

Fabrique des fonctions utilitaires.

Implémente Arcane::IParallelMng.

Définition à la ligne 905 du fichier MpiParallelMng.cc.

◆ _isAcceleratorAware()

bool Arcane::MpiParallelMng::_isAcceleratorAware ( ) const
overrideprotectedvirtual

Réimplémentée à partir de Arcane::ParallelMngDispatcher.

Définition à la ligne 914 du fichier MpiParallelMng.cc.

◆ _waitSomeRequests()

UniqueArray< Integer > Arcane::MpiParallelMng::_waitSomeRequests ( ArrayView< Request requests,
bool  is_non_blocking 
)
private

Définition à la ligne 707 du fichier MpiParallelMng.cc.

◆ adapter()

MpiAdapter * Arcane::MpiParallelMng::adapter ( )
inline

Définition à la ligne 144 du fichier MpiParallelMng.h.

◆ barrier()

void Arcane::MpiParallelMng::barrier ( )
overridevirtual

Effectue une barière.

Implémente Arcane::IParallelMng.

Définition à la ligne 669 du fichier MpiParallelMng.cc.

Références Arccore::ITraceMng::flush(), et traceMng().

Référencé par Arcane::MessagePassing::HybridParallelMng::barrier().

◆ broadcastSerializer()

void Arcane::MpiParallelMng::broadcastSerializer ( ISerializer values,
Int32  rank 
)
overridevirtual

Implémente Arcane::IParallelMng.

Définition à la ligne 557 du fichier MpiParallelMng.cc.

◆ build()

void Arcane::MpiParallelMng::build ( )
overridevirtual

◆ commRank()

Int32 Arcane::MpiParallelMng::commRank ( ) const
inlineoverridevirtual

Rang de cette instance dans le communicateur.

Implémente Arcane::IParallelMng.

Définition à la ligne 92 du fichier MpiParallelMng.h.

Référencé par Arcane::MessagePassing::HybridParallelMng::build().

◆ commSize()

Int32 Arcane::MpiParallelMng::commSize ( ) const
inlineoverridevirtual

Nombre d'instance dans le communicateur.

Implémente Arcane::IParallelMng.

Définition à la ligne 93 du fichier MpiParallelMng.h.

Référencé par Arcane::MessagePassing::HybridParallelMng::createSubParallelMngRef().

◆ communicator()

Communicator Arcane::MpiParallelMng::communicator ( ) const
inlineoverridevirtual

Communicateur MPI associé à ce gestionnaire.

Le communicateur n'est valide que si on utilise MPI. Il est possible de tester la validité en appelant la méthode Communicator::isValid(). S'il est valid, il est possible de récupérer sa valide via un cast:

IParallelMng* pm = ...;
MPI_Comm c = static_cast<MPI_Comm>(pm->communicator());
Interface du gestionnaire de parallélisme pour un sous-domaine.
virtual Parallel::Communicator communicator() const =0
Communicateur MPI associé à ce gestionnaire.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120

Implémente Arcane::IParallelMng.

Définition à la ligne 145 du fichier MpiParallelMng.h.

Référencé par build(), et Arcane::MessagePassing::HybridParallelMng::communicator().

◆ createExchanger()

IParallelExchanger * Arcane::MpiParallelMng::createExchanger ( )
overridevirtual

Retourne une interface pour transférer des messages entre processeurs.

L'instance retournée doit être détruite par l'opérateur delete.

Implémente Arcane::IParallelMng.

Définition à la ligne 753 du fichier MpiParallelMng.cc.

◆ createGetVariablesValuesOperation()

IGetVariablesValuesParallelOperation * Arcane::MpiParallelMng::createGetVariablesValuesOperation ( )
overridevirtual

Retourne une opération pour récupérer les valeurs d'une variable sur les entités d'un autre sous-domaine.

L'instance retournée doit être détruite par l'opérateur delete.

Implémente Arcane::IParallelMng.

Définition à la ligne 735 du fichier MpiParallelMng.cc.

◆ createReceiveSerializer()

ISerializeMessage * Arcane::MpiParallelMng::createReceiveSerializer ( Int32  rank)
overridevirtual

Créé un message non bloquant pour recevoir des données sérialisées du rang rank.

Le message est traité uniquement lors de l'appel à processMessages().

Implémente Arcane::IParallelMng.

Définition à la ligne 579 du fichier MpiParallelMng.cc.

Références m_comm_rank.

◆ createRequestListRef()

Ref< IRequestList > Arcane::MpiParallelMng::createRequestListRef ( )
overridevirtual

Créé une liste de requêtes pour ce gestionnaire.

Implémente Arcane::IParallelMng.

Définition à la ligne 896 du fichier MpiParallelMng.cc.

◆ createSendSerializer()

ISerializeMessage * Arcane::MpiParallelMng::createSendSerializer ( Int32  rank)
overridevirtual

Créé un message non bloquant pour envoyer des données sérialisées au rang rank.

Le message est traité uniquement lors de l'appel à processMessages().

Implémente Arcane::IParallelMng.

Définition à la ligne 535 du fichier MpiParallelMng.cc.

Références m_comm_rank.

◆ createSynchronizer() [1/2]

IVariableSynchronizer * Arcane::MpiParallelMng::createSynchronizer ( const ItemGroup group)
overridevirtual

Retourne une interface pour synchroniser des variables sur le groupe group.

L'instance retournée doit être détruite par l'opérateur delete.

Implémente Arcane::IParallelMng.

Définition à la ligne 771 du fichier MpiParallelMng.cc.

◆ createSynchronizer() [2/2]

IVariableSynchronizer * Arcane::MpiParallelMng::createSynchronizer ( IItemFamily family)
overridevirtual

Retourne une interface pour synchroniser des variables sur le groupe de la famille family.

L'instance retournée doit être détruite par l'opérateur delete.

Implémente Arcane::IParallelMng.

Définition à la ligne 762 du fichier MpiParallelMng.cc.

◆ createTopology()

IParallelTopology * Arcane::MpiParallelMng::createTopology ( )
overridevirtual

Créé une instance contenant les infos sur la topologie des rangs de ce gestionnnaire.

Cette opération est collective.

L'instance retournée doit être détruite par l'opérateur delete.

Implémente Arcane::IParallelMng.

Définition à la ligne 780 du fichier MpiParallelMng.cc.

◆ createTransferValuesOperation()

ITransferValuesParallelOperation * Arcane::MpiParallelMng::createTransferValuesOperation ( )
overridevirtual

Retourne une opération pour transférer des valeurs entre sous-domaine.

L'instance retournée doit être détruite par l'opérateur delete.

Implémente Arcane::IParallelMng.

Définition à la ligne 744 du fichier MpiParallelMng.cc.

◆ datatypes()

MpiDatatypeList * Arcane::MpiParallelMng::datatypes ( )
inline

Définition à la ligne 149 du fichier MpiParallelMng.h.

◆ freeRequests()

void Arcane::MpiParallelMng::freeRequests ( ArrayView< Parallel::Request requests)
overridevirtual

Libère les requêtes.

Implémente Arcane::IParallelMng.

Définition à la ligne 625 du fichier MpiParallelMng.cc.

◆ getMPICommunicator()

void * Arcane::MpiParallelMng::getMPICommunicator ( )
inlineoverridevirtual

Adresse du communicateur MPI associé à ce gestionnaire.

Le communicateur n'est valide que si on utilise MPI. Sinon, l'adresse retournée est 0. La valeur retournée est de type (MPI_Comm*).

Implémente Arcane::IParallelMng.

Définition à la ligne 94 du fichier MpiParallelMng.h.

Référencé par Arcane::MessagePassing::HybridParallelMng::getMPICommunicator().

◆ initialize()

void Arcane::MpiParallelMng::initialize ( )
overridevirtual

Initialise le gestionnaire du parallélisme.

Implémente Arcane::IParallelMng.

Définition à la ligne 503 du fichier MpiParallelMng.cc.

Références Arccore::ITraceMng::info(), m_is_initialized, Arcane::ParallelMngDispatcher::timeMetricCollector(), et Arccore::ITraceMng::warning().

◆ ioMng()

IIOMng * Arcane::MpiParallelMng::ioMng ( ) const
inlineoverridevirtual

Gestionnaire des entrées/sorties.

Implémente Arcane::IParallelMng.

Définition à la ligne 100 du fichier MpiParallelMng.h.

◆ isHybridImplementation()

bool Arcane::MpiParallelMng::isHybridImplementation ( ) const
inlineoverridevirtual

Indique si l'implémentation utilise le mode hybride.

L'implémentation utilise le mode mixte MPI/thread.

Implémente Arcane::IParallelMng.

Définition à la ligne 96 du fichier MpiParallelMng.h.

◆ isMasterIO()

bool Arcane::MpiParallelMng::isMasterIO ( ) const
inlineoverridevirtual

true si l'instance est un gestionnaire maître des entrées/sorties.

Implémente Arcane::IParallelMng.

Définition à la ligne 103 du fichier MpiParallelMng.h.

◆ isParallel()

bool Arcane::MpiParallelMng::isParallel ( ) const
inlineoverridevirtual

Retourne true si l'exécution est parallèle.

L'exécution est parallèle si l'instance implémente un mécanisme d'échange de message tel que MPI.

Implémente Arcane::IParallelMng.

Définition à la ligne 91 du fichier MpiParallelMng.h.

◆ isThreadImplementation()

bool Arcane::MpiParallelMng::isThreadImplementation ( ) const
inlineoverridevirtual

Indique si l'implémentation utilise les threads.

L'implémentation utilise les threads soit en mode thread pure, soit en mode mixte MPI/thread.

Implémente Arcane::IParallelMng.

Définition à la ligne 95 du fichier MpiParallelMng.h.

◆ legacyProbe()

auto Arcane::MpiParallelMng::legacyProbe ( const PointToPointMessageInfo message)
overridevirtual

Sonde si des messages sont disponibles.

Voir également
Arccore::MessagePassing::mpLegacyProbe().

Implémente Arcane::IParallelMng.

Définition à la ligne 598 du fichier MpiParallelMng.cc.

◆ masterIORank()

Integer Arcane::MpiParallelMng::masterIORank ( ) const
inlineoverridevirtual

Rang de l'instance gérant les entrées/sorties (pour laquelle isMasterIO() est vrai)

Dans l'implémentation actuelle, il s'agit toujours du processeur de rang 0.

Implémente Arcane::IParallelMng.

Définition à la ligne 104 du fichier MpiParallelMng.h.

◆ mpiLock()

MpiLock * Arcane::MpiParallelMng::mpiLock ( ) const
inline

Définition à la ligne 147 du fichier MpiParallelMng.h.

◆ nonBlockingCollective()

IParallelNonBlockingCollective * Arcane::MpiParallelMng::nonBlockingCollective ( ) const
inlineoverridevirtual

Interface des opérations collectives non blocantes.

Implémente Arcane::IParallelMng.

Définition à la ligne 138 du fichier MpiParallelMng.h.

◆ printStats()

void Arcane::MpiParallelMng::printStats ( )
overridevirtual

Affiche des statistiques liées à ce gestionnaire du parallélisme.

Implémente Arcane::IParallelMng.

Définition à la ligne 659 du fichier MpiParallelMng.cc.

Références Arcane::Parallel::IStat::print().

◆ probe()

auto Arcane::MpiParallelMng::probe ( const PointToPointMessageInfo message)
overridevirtual

Sonde si des messages sont disponibles.

Voir également
Arccore::MessagePassing::mpProbe().

Implémente Arcane::IParallelMng.

Définition à la ligne 589 du fichier MpiParallelMng.cc.

◆ receiveSerializer()

Request Arcane::MpiParallelMng::receiveSerializer ( ISerializer values,
const PointToPointMessageInfo message 
)
overridevirtual

Implémente Arcane::IParallelMng.

Définition à la ligne 616 du fichier MpiParallelMng.cc.

◆ recvSerializer()

void Arcane::MpiParallelMng::recvSerializer ( ISerializer values,
Int32  rank 
)
overridevirtual

Implémente Arcane::IParallelMng.

Définition à la ligne 567 du fichier MpiParallelMng.cc.

◆ reduceRank()

ARCANE_DEPRECATED_260 Real Arcane::MpiParallelMng::reduceRank ( eReduceType  rt,
Real  v,
Int32 *  rank 
)
inline

Définition à la ligne 130 du fichier MpiParallelMng.h.

◆ replication()

IParallelReplication * Arcane::MpiParallelMng::replication ( ) const
overridevirtual

Informations sur la réplication.

Le pointeur retourné n'est jamais nul et reste la propriété de cette instance.

Implémente Arcane::IParallelMng.

Définition à la ligne 789 du fichier MpiParallelMng.cc.

◆ sendSerializer() [1/3]

Request Arcane::MpiParallelMng::sendSerializer ( const ISerializer values,
const PointToPointMessageInfo message 
)
overridevirtual

Implémente Arcane::IParallelMng.

Définition à la ligne 607 du fichier MpiParallelMng.cc.

◆ sendSerializer() [2/3]

void Arcane::MpiParallelMng::sendSerializer ( ISerializer values,
Int32  rank 
)
overridevirtual

Implémente Arcane::IParallelMng.

Définition à la ligne 523 du fichier MpiParallelMng.cc.

◆ sendSerializer() [3/3]

Request Arcane::MpiParallelMng::sendSerializer ( ISerializer values,
Int32  rank,
ByteArray bytes 
)
overridevirtual

la requête donnée en retour doit être utilisée dans waitAllRequests() ou libérée par appel à freeRequests().

Implémente Arcane::IParallelMng.

Définition à la ligne 545 du fichier MpiParallelMng.cc.

Références Arccore::MessagePassing::internal::BasicSerializeMessage::defaultTag(), et Arcane::ParallelMngDispatcher::timeStats().

◆ sequentialParallelMng()

IParallelMng * Arcane::MpiParallelMng::sequentialParallelMng ( )
overridevirtual

Retourne un gestionnaire de parallélisme séquentiel.

Cette instance reste propriétaire de l'instance retournée qui ne doit pas être détruite. La durée de vie de l'instance retournée est la même que cette instance.

Implémente Arcane::IParallelMng.

Définition à la ligne 650 du fichier MpiParallelMng.cc.

◆ sequentialParallelMngRef()

Ref< IParallelMng > Arcane::MpiParallelMng::sequentialParallelMngRef ( )
overridevirtual

Implémente Arcane::IParallelMng.

Définition à la ligne 644 du fichier MpiParallelMng.cc.

◆ serializeDispatcher()

MpiSerializeDispatcher * Arcane::MpiParallelMng::serializeDispatcher ( ) const
inline

Définition à la ligne 151 du fichier MpiParallelMng.h.

◆ setReplication()

void Arcane::MpiParallelMng::setReplication ( IParallelReplication v)
overridevirtual

Positionne les Informations sur la réplication.

Cette méthode est interne à Arcane et ne doit être appelée que lors de l'initialisation.

Implémente Arcane::IParallelMng.

Définition à la ligne 798 du fichier MpiParallelMng.cc.

◆ stat()

Parallel::IStat * Arcane::MpiParallelMng::stat ( )
inlineoverridevirtual

Gestionnaire des statistiques.

Implémente Arcane::IParallelMng.

Définition à la ligne 168 du fichier MpiParallelMng.h.

◆ testSomeRequests()

UniqueArray< Integer > Arcane::MpiParallelMng::testSomeRequests ( ArrayView< Request rvalues)
overridevirtual

Test si une des requêtes rvalues est terminée.

Retourne un tableau d'indices des requêtes réalisées.

Implémente Arcane::IParallelMng.

Définition à la ligne 698 du fichier MpiParallelMng.cc.

◆ threadMng()

IThreadMng * Arcane::MpiParallelMng::threadMng ( ) const
inlineoverridevirtual

Gestionnaire de threads.

Implémente Arcane::IParallelMng.

Définition à la ligne 98 du fichier MpiParallelMng.h.

Référencé par build().

◆ timerMng()

ITimerMng * Arcane::MpiParallelMng::timerMng ( ) const
inlineoverridevirtual

Gestionnaire de timers.

Implémente Arcane::IParallelMng.

Définition à la ligne 106 du fichier MpiParallelMng.h.

Référencé par build().

◆ traceMng()

ITraceMng * Arcane::MpiParallelMng::traceMng ( ) const
inlineoverridevirtual

Gestionnaire de traces.

Implémente Arcane::IParallelMng.

Définition à la ligne 97 du fichier MpiParallelMng.h.

Référencé par barrier(), et build().

◆ waitAllRequests()

void Arcane::MpiParallelMng::waitAllRequests ( ArrayView< Request rvalues)
overridevirtual

Bloque en attendant que les requêtes rvalues soient terminées.

Implémente Arcane::IParallelMng.

Définition à la ligne 679 du fichier MpiParallelMng.cc.

◆ waitSomeRequests()

UniqueArray< Integer > Arcane::MpiParallelMng::waitSomeRequests ( ArrayView< Request rvalues)
overridevirtual

Bloque en attendant qu'une des requêtes rvalues soit terminée.

Retourne un tableau d'indices des requêtes réalisées.

Implémente Arcane::IParallelMng.

Définition à la ligne 689 du fichier MpiParallelMng.cc.

◆ worldParallelMng()

IParallelMng * Arcane::MpiParallelMng::worldParallelMng ( ) const
inlineoverridevirtual

Gestionnaire de parallélisme sur l'ensemble des ressources allouées.

Implémente Arcane::IParallelMng.

Définition à la ligne 99 du fichier MpiParallelMng.h.

Référencé par build().

Documentation des données membres

◆ ArcaneMpiSerializeMessageList

friend Arcane::MpiParallelMng::ArcaneMpiSerializeMessageList

Définition à la ligne 83 du fichier MpiParallelMng.h.

◆ m_adapter

MpiAdapter* Arcane::MpiParallelMng::m_adapter = nullptr
private

Définition à la ligne 185 du fichier MpiParallelMng.h.

◆ m_comm_rank

Int32 Arcane::MpiParallelMng::m_comm_rank = A_NULL_RANK
private

Numéro du processeur actuel.

Définition à la ligne 187 du fichier MpiParallelMng.h.

Référencé par createReceiveSerializer(), et createSendSerializer().

◆ m_comm_size

Int32 Arcane::MpiParallelMng::m_comm_size = 0
private

Nombre de sous-domaines.

Définition à la ligne 188 du fichier MpiParallelMng.h.

◆ m_communicator

MPI_Comm Arcane::MpiParallelMng::m_communicator = MPI_COMM_NULL
private

Définition à la ligne 191 du fichier MpiParallelMng.h.

◆ m_datatype_list

MpiDatatypeList* Arcane::MpiParallelMng::m_datatype_list = nullptr
private

Définition à la ligne 184 du fichier MpiParallelMng.h.

◆ m_io_mng

IIOMng* Arcane::MpiParallelMng::m_io_mng = nullptr
private

Définition à la ligne 179 du fichier MpiParallelMng.h.

◆ m_is_communicator_owned

bool Arcane::MpiParallelMng::m_is_communicator_owned = false
private

Définition à la ligne 192 du fichier MpiParallelMng.h.

◆ m_is_initialized

bool Arcane::MpiParallelMng::m_is_initialized = false
private

true si déjà initialisé

Définition à la ligne 189 du fichier MpiParallelMng.h.

Référencé par initialize().

◆ m_is_parallel

bool Arcane::MpiParallelMng::m_is_parallel = false
private

Définition à la ligne 186 du fichier MpiParallelMng.h.

◆ m_is_timer_owned

bool Arcane::MpiParallelMng::m_is_timer_owned = false
private

Définition à la ligne 183 du fichier MpiParallelMng.h.

◆ m_mpi_lock

MpiLock* Arcane::MpiParallelMng::m_mpi_lock = nullptr
private

Définition à la ligne 193 du fichier MpiParallelMng.h.

◆ m_mpi_serialize_dispatcher

MpiSerializeDispatcher* Arcane::MpiParallelMng::m_mpi_serialize_dispatcher = nullptr
private

Définition à la ligne 195 du fichier MpiParallelMng.h.

◆ m_non_blocking_collective

IParallelNonBlockingCollective* Arcane::MpiParallelMng::m_non_blocking_collective = nullptr
private

Définition à la ligne 194 du fichier MpiParallelMng.h.

◆ m_replication

IParallelReplication* Arcane::MpiParallelMng::m_replication = nullptr
private

Définition à la ligne 182 du fichier MpiParallelMng.h.

◆ m_sequential_parallel_mng

Ref<IParallelMng> Arcane::MpiParallelMng::m_sequential_parallel_mng
private

Définition à la ligne 180 du fichier MpiParallelMng.h.

◆ m_stat

Parallel::IStat* Arcane::MpiParallelMng::m_stat = nullptr
private

Définition à la ligne 190 du fichier MpiParallelMng.h.

◆ m_thread_mng

IThreadMng* Arcane::MpiParallelMng::m_thread_mng = nullptr
private

Définition à la ligne 177 du fichier MpiParallelMng.h.

◆ m_timer_mng

ITimerMng* Arcane::MpiParallelMng::m_timer_mng = nullptr
private

Définition à la ligne 181 du fichier MpiParallelMng.h.

◆ m_trace

ITraceMng* Arcane::MpiParallelMng::m_trace = nullptr
private

Définition à la ligne 176 du fichier MpiParallelMng.h.

◆ m_use_serialize_list_v2

bool Arcane::MpiParallelMng::m_use_serialize_list_v2 = true
private

Définition à la ligne 197 du fichier MpiParallelMng.h.

◆ m_utils_factory

Ref<IParallelMngUtilsFactory> Arcane::MpiParallelMng::m_utils_factory
private

Définition à la ligne 196 du fichier MpiParallelMng.h.

◆ m_world_parallel_mng

IParallelMng* Arcane::MpiParallelMng::m_world_parallel_mng = nullptr
private

Définition à la ligne 178 du fichier MpiParallelMng.h.


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