Arcane  v3.16.7.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la classe Arcane::MachineMemoryWindow< Type >

Classe permettant de créer une fenêtre mémoire partagée entre les sous-domaines d'un même noeud. Les segments de cette fenêtre seront contigüs en mémoire. Plus de détails...

#include <arcane/core/MachineMemoryWindow.h>

+ Graphe de collaboration de Arcane::MachineMemoryWindow< Type >:

Fonctions membres publiques

 MachineMemoryWindow (IParallelMng *pm, Int64 nb_elem_segment)
 Constructeur.
 
Span< TypesegmentView () const
 Méthode permettant d'obtenir une vue sur notre segment de fenêtre mémoire.
 
Span< TypesegmentView (Int32 rank) const
 Méthode permettant d'obtenir une vue sur le segment de fenêtre mémoire d'un autre sous-domaine du noeud.
 
Span< TypewindowView () const
 Méthode permettant d'obtenir une vue sur toute la fenêtre mémoire.
 
Span< const TypesegmentConstView () const
 Méthode permettant d'obtenir une vue constante sur notre segment de fenêtre mémoire.
 
Span< const TypesegmentConstView (Int32 rank) const
 Méthode permettant d'obtenir une vue constante sur le segment de fenêtre mémoire d'un autre sous-domaine du noeud.
 
Span< const TypewindowConstView () const
 Méthode permettant d'obtenir une vue constante sur toute la fenêtre mémoire.
 
void resizeSegment (Integer new_nb_elem) const
 Méthode permettant de redimensionner les segments de la fenêtre. Appel collectif.
 
ConstArrayView< Int32machineRanks () const
 Méthode permettant d'obtenir les rangs qui possèdent un segment dans la fenêtre.
 
void barrier () const
 Méthode permettant d'attendre que tous les processus/threads du noeud appellent cette méthode pour continuer l'exécution.
 

Attributs privés

MachineMemoryWindowBase m_impl
 

Description détaillée

template<class Type>
class Arcane::MachineMemoryWindow< Type >

Classe permettant de créer une fenêtre mémoire partagée entre les sous-domaines d'un même noeud. Les segments de cette fenêtre seront contigüs en mémoire.

Paramètres du template
TypeLe type des éléments de la fenêtre.

Définition à la ligne 43 du fichier MachineMemoryWindow.h.

Documentation des constructeurs et destructeur

◆ MachineMemoryWindow()

template<class Type>
Arcane::MachineMemoryWindow< Type >::MachineMemoryWindow ( IParallelMng * pm,
Int64 nb_elem_segment )
inline

Constructeur.

Paramètres
pmLe ParallelMng contenant les processus du noeud.
nb_elem_segmentLe nombre d'éléments pour le segment de ce sous-domaine.

Définition à la ligne 52 du fichier MachineMemoryWindow.h.

Documentation des fonctions membres

◆ barrier()

template<class Type>
void Arcane::MachineMemoryWindow< Type >::barrier ( ) const
inline

Méthode permettant d'attendre que tous les processus/threads du noeud appellent cette méthode pour continuer l'exécution.

Définition à la ligne 157 du fichier MachineMemoryWindow.h.

◆ machineRanks()

template<class Type>
ConstArrayView< Int32 > Arcane::MachineMemoryWindow< Type >::machineRanks ( ) const
inline

Méthode permettant d'obtenir les rangs qui possèdent un segment dans la fenêtre.

L'ordre des processus de la vue retournée correspond à l'ordre des segments dans la fenêtre.

Renvoie
Une vue contenant les ids des rangs.

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

◆ resizeSegment()

template<class Type>
void Arcane::MachineMemoryWindow< Type >::resizeSegment ( Integer new_nb_elem) const
inline

Méthode permettant de redimensionner les segments de la fenêtre. Appel collectif.

La taille totale de la fenêtre doit être inférieure ou égale à la taille d'origine.

Paramètres
new_nb_elemLa nouvelle taille de notre segment.

Définition à la ligne 134 du fichier MachineMemoryWindow.h.

◆ segmentConstView() [1/2]

template<class Type>
Span< const Type > Arcane::MachineMemoryWindow< Type >::segmentConstView ( ) const
inline

Méthode permettant d'obtenir une vue constante sur notre segment de fenêtre mémoire.

Renvoie
Une vue constante.

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

Références Arcane::asSpan().

+ Voici le graphe d'appel pour cette fonction :

◆ segmentConstView() [2/2]

template<class Type>
Span< const Type > Arcane::MachineMemoryWindow< Type >::segmentConstView ( Int32 rank) const
inline

Méthode permettant d'obtenir une vue constante sur le segment de fenêtre mémoire d'un autre sous-domaine du noeud.

Paramètres
rankLe rang du sous-domaine.
Renvoie
Une vue constante.

Définition à la ligne 109 du fichier MachineMemoryWindow.h.

Références Arcane::asSpan().

+ Voici le graphe d'appel pour cette fonction :

◆ segmentView() [1/2]

template<class Type>
Span< Type > Arcane::MachineMemoryWindow< Type >::segmentView ( ) const
inline

Méthode permettant d'obtenir une vue sur notre segment de fenêtre mémoire.

Renvoie
Une vue.

Définition à la ligne 64 du fichier MachineMemoryWindow.h.

Références Arcane::asSpan().

+ Voici le graphe d'appel pour cette fonction :

◆ segmentView() [2/2]

template<class Type>
Span< Type > Arcane::MachineMemoryWindow< Type >::segmentView ( Int32 rank) const
inline

Méthode permettant d'obtenir une vue sur le segment de fenêtre mémoire d'un autre sous-domaine du noeud.

Paramètres
rankLe rang du sous-domaine.
Renvoie
Une vue.

Définition à la ligne 76 du fichier MachineMemoryWindow.h.

Références Arcane::asSpan().

+ Voici le graphe d'appel pour cette fonction :

◆ windowConstView()

template<class Type>
Span< const Type > Arcane::MachineMemoryWindow< Type >::windowConstView ( ) const
inline

Méthode permettant d'obtenir une vue constante sur toute la fenêtre mémoire.

Renvoie
Une vue constante.

Définition à la ligne 120 du fichier MachineMemoryWindow.h.

Références Arcane::asSpan().

+ Voici le graphe d'appel pour cette fonction :

◆ windowView()

template<class Type>
Span< Type > Arcane::MachineMemoryWindow< Type >::windowView ( ) const
inline

Méthode permettant d'obtenir une vue sur toute la fenêtre mémoire.

Renvoie
Une vue.

Définition à la ligne 86 du fichier MachineMemoryWindow.h.

Références Arcane::asSpan().

+ Voici le graphe d'appel pour cette fonction :

Documentation des données membres

◆ m_impl

template<class Type>
MachineMemoryWindowBase Arcane::MachineMemoryWindow< Type >::m_impl
private

Définition à la ligne 164 du fichier MachineMemoryWindow.h.


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