Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::IParallelSuperMngabstract
+ Graphe d'héritage de Arcane::IParallelSuperMng:
+ Graphe de collaboration de Arcane::IParallelSuperMng:

Types publics

typedef Parallel::Request Request
 
typedef Parallel::eReduceType eReduceType
 

Fonctions membres publiques

virtual ~IParallelSuperMng ()
 Libère les ressources.
 
virtual void build ()=0
 Construit les membres l'instance.
 
virtual void initialize ()=0
 Initialise l'instance.
 
virtual IApplicationapplication () const =0
 Retourne le gestionnaire principal.
 
virtual IThreadMngthreadMng () const =0
 Gestionnaire de thread.
 
virtual bool isParallel () const =0
 Retourne true si l'exécution est parallèle.
 
virtual Int32 commRank () const =0
 Retourne le numéro du process (compris entre 0 et nbProcess()-1)
 
virtual Int32 commSize () const =0
 Retourne le nombre total de process utilisés.
 
virtual Int32 traceRank () const =0
 Rang de cette instance pour les traces.
 
virtual void * getMPICommunicator ()=0
 Adresse du communicateur MPI associé à ce gestionnaire.
 
virtual Parallel::Communicator communicator () const =0
 Communicateur MPI associé à ce gestionnaire.
 
virtual Ref< IParallelMnginternalCreateWorldParallelMng (Int32 local_rank)=0
 
virtual Int32 nbLocalSubDomain ()=0
 Nombre de sous-domaines à créér localement.
 
virtual void tryAbort ()=0
 Tente de faire un abort.
 
virtual bool isMasterIO () const =0
 true si l'instance est un gestionnaire maître des entrées/sorties.
 
virtual Int32 masterIORank () const =0
 Rang de l'instance gérant les entrées/sorties (pour laquelle isMasterIO() est vrai)
 
virtual void barrier ()=0
 Gestionnaire de parallèlisme pour l'ensemble des ressources allouées.
 
opérations de broadcast
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
 

Description détaillée

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

Documentation des définitions de type membres

◆ eReduceType

◆ Request

Définition à la ligne 44 du fichier IParallelSuperMng.h.

Documentation des constructeurs et destructeur

◆ ~IParallelSuperMng()

virtual Arcane::IParallelSuperMng::~IParallelSuperMng ( )
inlinevirtual

Libère les ressources.

Définition à la ligne 49 du fichier IParallelSuperMng.h.

Documentation des fonctions membres

◆ barrier()

virtual void Arcane::IParallelSuperMng::barrier ( )
pure virtual

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

Effectue une barière

◆ broadcast()

virtual void Arcane::IParallelSuperMng::broadcast ( ByteArrayView  send_buf,
Integer  process_id 
)
pure virtual

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.

Implémenté dans Arcane::ParallelSuperMngDispatcher.

◆ build()

virtual void Arcane::IParallelSuperMng::build ( )
pure virtual

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().

Avertissement
Cette méthode ne doit être appelée qu'une seule fois.

◆ communicator()

virtual Parallel::Communicator Arcane::IParallelSuperMng::communicator ( ) const
pure virtual

Communicateur MPI associé à ce gestionnaire.

Voir également
IParallelMng::communicator()

◆ getMPICommunicator()

virtual void * Arcane::IParallelSuperMng::getMPICommunicator ( )
pure virtual

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*).

◆ initialize()

virtual void Arcane::IParallelSuperMng::initialize ( )
pure virtual

Initialise l'instance.

L'instance n'est pas utilisable tant que cette méthode n'a pas été appelée.

Avertissement
Cette méthode ne doit être appelée qu'une seule fois.

◆ masterIORank()

virtual Int32 Arcane::IParallelSuperMng::masterIORank ( ) const
pure virtual

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.

◆ nbLocalSubDomain()

virtual Int32 Arcane::IParallelSuperMng::nbLocalSubDomain ( )
pure virtual

Nombre de sous-domaines à créér localement.

  • 1 si séquentiel.
  • 1 si MPI pur
  • n si THREAD ou THREAD/MPI

◆ tryAbort()

virtual void Arcane::IParallelSuperMng::tryAbort ( )
pure virtual

Tente de faire un abort.

Cette méthode est appelée lorsqu'une exception a été généré et que le cas en cours d'exécution doit s'interrompre. Elle permet d'effectuer les opérations de nettoyage du gestionnaire si besoin est.


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