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

Calcule de la liste des entités à synchroniser. Plus de détails...

#include <arcane/impl/internal/VariableSynchronizerComputeList.h>

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

Classes

class  GhostRankInfo
 
class  RankInfo
 
class  ShareRankInfo
 

Fonctions membres publiques

 VariableSynchronizerComputeList (VariableSynchronizer *var_sync)
 
void compute ()
 Création de la liste des éléments de synchronisation.
 
- Fonctions membres publiques hérités de Arccore::TraceAccessor
 TraceAccessor (ITraceMng *m)
 Construit un accesseur via le gestionnaire de trace m.
 
 TraceAccessor (const TraceAccessor &rhs)
 Constructeur par recopie.
 
TraceAccessoroperator= (const TraceAccessor &rhs)
 Opérateur de recopie.
 
virtual ~TraceAccessor ()
 Libère les ressources.
 
ITraceMngtraceMng () const
 Gestionnaire de trace.
 
TraceMessage info () const
 Flot pour un message d'information.
 
TraceMessage pinfo () const
 Flot pour un message d'information en parallèle.
 
TraceMessage info (char category) const
 Flot pour un message d'information d'une catégorie donnée.
 
TraceMessage pinfo (char category) const
 Flot pour un message d'information parallèle d'une catégorie donnée.
 
TraceMessage info (bool v) const
 Flot pour un message d'information.
 
TraceMessage warning () const
 Flot pour un message d'avertissement.
 
TraceMessage pwarning () const
 
TraceMessage error () const
 Flot pour un message d'erreur.
 
TraceMessage perror () const
 
TraceMessage log () const
 Flot pour un message de log.
 
TraceMessage plog () const
 Flot pour un message de log.
 
TraceMessage logdate () const
 Flot pour un message de log précédé de la date.
 
TraceMessage fatal () const
 Flot pour un message d'erreur fatale.
 
TraceMessage pfatal () const
 Flot pour un message d'erreur fatale en parallèle.
 
TraceMessageDbg debug (Trace::eDebugLevel=Trace::Medium) const
 Flot pour un message de debug.
 
Trace::eDebugLevel configDbgLevel () const
 Niveau debug du fichier de configuration.
 
TraceMessage info (Int32 verbose_level) const
 Flot pour un message d'information d'un niveau donné
 
TraceMessage linfo () const
 Flot pour un message d'information avec le niveau d'information local à cette instance.
 
TraceMessage linfo (Int32 relative_level) const
 Flot pour un message d'information avec le niveau d'information local à cette instance.
 
void fatalMessage (const StandaloneTraceMessage &o) const
 

Fonctions membres privées

void _createList (UniqueArray< SharedArray< Int32 > > &boundary_items)
 
void _checkValid (ArrayView< GhostRankInfo > ghost_ranks_info, ArrayView< ShareRankInfo > share_ranks_info)
 
void _printSyncList ()
 

Attributs privés

VariableSynchronizerm_synchronizer
 
IParallelMngm_parallel_mng = nullptr
 
ItemGroup m_item_group
 
bool m_is_verbose = false
 
bool m_is_debug = false
 

Membres hérités additionnels

- Fonctions membres protégées hérités de Arccore::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
 
Int32 _localVerboseLevel () const
 

Description détaillée

Calcule de la liste des entités à synchroniser.

Définition à la ligne 36 du fichier VariableSynchronizerComputeList.h.

Documentation des constructeurs et destructeur

◆ VariableSynchronizerComputeList()

Arcane::VariableSynchronizerComputeList::VariableSynchronizerComputeList ( VariableSynchronizer var_sync)
explicit

Définition à la ligne 40 du fichier VariableSynchronizerComputeList.cc.

Documentation des fonctions membres

◆ _checkValid()

void Arcane::VariableSynchronizerComputeList::_checkValid ( ArrayView< GhostRankInfo ghost_ranks_info,
ArrayView< ShareRankInfo share_ranks_info 
)
private

Définition à la ligne 446 du fichier VariableSynchronizerComputeList.cc.

◆ _createList()

◆ _printSyncList()

void Arcane::VariableSynchronizerComputeList::_printSyncList ( )
private

Définition à la ligne 544 du fichier VariableSynchronizerComputeList.cc.

◆ compute()

void Arcane::VariableSynchronizerComputeList::compute ( )

Création de la liste des éléments de synchronisation.

Pour générer les infos de synchronisations, on suppose que le owner() de chaque entité est correcte

A partir du fichier de communication, contruit les structures pour la synchronisation. Il s'agit d'une liste d'éléments, chaque élément étant composé du rang du processeur avec lequel il faut communiquer et les localId() des entités du maillage qu'on doit lui envoyer et qu'on doit réceptionner.

Si le groupe associé à cette instance est allItems(), on vérifie que toutes les entités de la famille sont soit propres au domaine, soit fantomes. Si une entité n'est pas dans ce cas, alors elle ne sera pas synchronisée et la cohérence du parallélisme ne sera pas assuré: il s'agit d'une erreur fatale.

Le fonctionnement sur tout groupe (pluys que allItems) est principalement subordonné au fait que changeLocalIds() soit implementé sur tous les groupes.

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

Références ARCANE_FATAL, ENUMERATE_ITEM, et Arcane::Item::itemBase().

Documentation des données membres

◆ m_is_debug

bool Arcane::VariableSynchronizerComputeList::m_is_debug = false
private

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

◆ m_is_verbose

bool Arcane::VariableSynchronizerComputeList::m_is_verbose = false
private

Définition à la ligne 150 du fichier VariableSynchronizerComputeList.h.

◆ m_item_group

ItemGroup Arcane::VariableSynchronizerComputeList::m_item_group
private

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

◆ m_parallel_mng

IParallelMng* Arcane::VariableSynchronizerComputeList::m_parallel_mng = nullptr
private

Définition à la ligne 148 du fichier VariableSynchronizerComputeList.h.

◆ m_synchronizer

VariableSynchronizer* Arcane::VariableSynchronizerComputeList::m_synchronizer
private

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


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