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

Classe permettant de regrouper les données de certains sous-domaines sur d'autres sous-domaines. Plus de détails...

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

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

Fonctions membres publiques

 GatherGroup (GatherGroupInfo *gather_group_info)
 Constructeur.
 
 GatherGroup ()
 Constructeur. Pour que l'objet soit utilisable, il est nécessaire d'appeler setGatherGroupInfo().
 
bool isNeedGather () override
 Méthode permettant de savoir si l'on doit effectuer le regroupement ou si l'on peut directement écrire les données.
 
void gatherToMasterIO (Int64 sizeof_elem, Span< const Byte > in, Span< Byte > out) override
 Méthode permettant de regrouper les données de plusieurs sous-domaines sur un ou plusieurs sous-domaines.
 
void setGatherGroupInfo (GatherGroupInfo *gather_group_info)
 Méthode permettant de définir les informations de regroupement.
 
template<class T>
void gatherToMasterIOT (Span< const T > in, Array< T > &out)
 Méthode permettant de regrouper les données de plusieurs sous-domaines sur un ou plusieurs sous-domaines.
 
template<class T>
void gatherToMasterIOT (Span2< const T > in, Array2< T > &out)
 Méthode permettant de regrouper les données de plusieurs sous-domaines sur un ou plusieurs sous-domaines.
 

Attributs privés

GatherGroupInfom_gather_group_info = nullptr
 

Description détaillée

Classe permettant de regrouper les données de certains sous-domaines sur d'autres sous-domaines.

Les écrivains seront les masterIO ou les masterParallelIO si m_use_collective_io est vrai.

Définition à la ligne 46 du fichier GatherGroup.h.

Documentation des constructeurs et destructeur

◆ GatherGroup()

Arcane::GatherGroup::GatherGroup ( GatherGroupInfo * gather_group_info)
explicit

Constructeur.

Paramètres
gather_group_infoLes informations de regroupement. isComputed() devra être vrai.

Définition à la ligne 32 du fichier GatherGroup.cc.

Références ARCANE_CHECK_POINTER, ARCANE_FATAL_IF, et Arcane::GatherGroupInfo::isComputed().

Référencé par GatherGroup().

+ Voici le graphe d'appel pour cette fonction :
+ Voici le graphe des appelants de cette fonction :

Documentation des fonctions membres

◆ gatherToMasterIO()

void Arcane::GatherGroup::gatherToMasterIO ( Int64 sizeof_elem,
Span< const Byte > in,
Span< Byte > out )
overridevirtual

Méthode permettant de regrouper les données de plusieurs sous-domaines sur un ou plusieurs sous-domaines.

Appel collectif.

Paramètres
sizeof_elemLa taille d'un élément.
inNotre tableau que l'on souhaite regrouper.
outLe tableau regroupé. Si l'on n'est pas écrivain, il n'y aura aucune modification.

Implémente Arcane::IGatherGroup.

Définition à la ligne 67 du fichier GatherGroup.cc.

Références ARCANE_CHECK_POINTER, Arcane::IParallelMng::commRank(), Arcane::IParallelMng::commSize(), Arcane::SpanImpl< T, SizeType, Extent >::constSmallView(), Arcane::SpanImpl< T, SizeType, Extent >::copy(), Arcane::IParallelMng::isThreadImplementation(), Arcane::IParallelMng::recv(), Arcane::SpanImpl< T, SizeType, Extent >::size(), Arcane::Span< T, Extent >::subSpan(), et Arcane::IParallelMng::waitAllRequests().

Référencé par GatherGroup(), gatherToMasterIOT(), et gatherToMasterIOT().

+ Voici le graphe d'appel pour cette fonction :
+ Voici le graphe des appelants de cette fonction :

◆ gatherToMasterIOT() [1/2]

template<class T>
void Arcane::GatherGroup::gatherToMasterIOT ( Span2< const T > in,
Array2< T > & out )

Méthode permettant de regrouper les données de plusieurs sous-domaines sur un ou plusieurs sous-domaines.

Il est recommandé d'utiliser cette méthode plutôt que directement gatherToMasterIO().

Paramètres
inNotre tableau que l'on souhaite regrouper.
outLe tableau regroupé. Si l'on n'est pas écrivain, il n'y aura aucune modification.

Définition à la ligne 223 du fichier GatherGroup.h.

Références Arcane::Span2Impl< T, SizeType, Extent1, Extent2 >::data(), Arccore::Span2Impl< T, SizeType, Extent1, Extent2 >::data(), Arcane::Span2Impl< T, SizeType, Extent1, Extent2 >::dim2Size(), gatherToMasterIO(), Arcane::Array2< DataType >::resizeNoInit(), et Arcane::Span2Impl< T, SizeType, Extent1, Extent2 >::totalNbElement().

+ Voici le graphe d'appel pour cette fonction :

◆ gatherToMasterIOT() [2/2]

template<class T>
void Arcane::GatherGroup::gatherToMasterIOT ( Span< const T > in,
Array< T > & out )

Méthode permettant de regrouper les données de plusieurs sous-domaines sur un ou plusieurs sous-domaines.

Il est recommandé d'utiliser cette méthode plutôt que directement gatherToMasterIO().

Paramètres
inNotre tableau que l'on souhaite regrouper.
outLe tableau regroupé. Si l'on n'est pas écrivain, il n'y aura aucune modification.

Définition à la ligne 204 du fichier GatherGroup.h.

Références Arcane::Array< DataType >::clear(), Arcane::Array< DataType >::data(), Arcane::SpanImpl< T, SizeType, Extent >::data(), gatherToMasterIO(), Arcane::Array< DataType >::resizeNoInit(), et Arcane::SpanImpl< T, SizeType, Extent >::sizeBytes().

Référencé par GatherGroup().

+ Voici le graphe d'appel pour cette fonction :
+ Voici le graphe des appelants de cette fonction :

◆ isNeedGather()

bool Arcane::GatherGroup::isNeedGather ( )
overridevirtual

Méthode permettant de savoir si l'on doit effectuer le regroupement ou si l'on peut directement écrire les données.

Appel non collectif, mais la valeur retournée sera la même pour tous les appelants.

L'appel à gatherToMasterIO() peut tout de même être effectué, le tableau in sera simplement copié dans le tableau out.

Implémente Arcane::IGatherGroup.

Définition à la ligne 54 du fichier GatherGroup.cc.

Références ARCANE_CHECK_POINTER, Arcane::IParallelMng::commSize(), et Arcane::IParallelMng::isThreadImplementation().

Référencé par GatherGroup().

+ Voici le graphe d'appel pour cette fonction :
+ Voici le graphe des appelants de cette fonction :

◆ setGatherGroupInfo()

void Arcane::GatherGroup::setGatherGroupInfo ( GatherGroupInfo * gather_group_info)

Méthode permettant de définir les informations de regroupement.

Cette méthode peut être utilisée pour remplacer les informations déjà enregistrées dans l'objet.

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

Références ARCANE_CHECK_POINTER, ARCANE_FATAL_IF, et Arcane::GatherGroupInfo::isComputed().

Référencé par GatherGroup().

+ Voici le graphe d'appel pour cette fonction :
+ Voici le graphe des appelants de cette fonction :

Documentation des données membres

◆ m_gather_group_info

GatherGroupInfo* Arcane::GatherGroup::m_gather_group_info = nullptr
private

Définition à la ligne 113 du fichier GatherGroup.h.


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