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/MachineMemoryWindowBase.h>
Fonctions membres publiques | |
MachineMemoryWindowBase (IParallelMng *pm, Int64 sizeof_segment, Int32 sizeof_elem) | |
Constructeur. | |
Span< std::byte > | segmentView () const |
Méthode permettant d'obtenir une vue sur notre segment de fenêtre mémoire. | |
Span< std::byte > | segmentView (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< std::byte > | windowView () const |
Méthode permettant d'obtenir une vue sur toute la fenêtre mémoire. | |
Span< const std::byte > | segmentConstView () const |
Méthode permettant d'obtenir une vue constante sur notre segment de fenêtre mémoire. | |
Span< const std::byte > | segmentConstView (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 std::byte > | windowConstView () const |
Méthode permettant d'obtenir une vue constante sur toute la fenêtre mémoire. | |
void | resizeSegment (Integer new_size) const |
Méthode permettant de redimensionner les segments de la fenêtre. Appel collectif. | |
ConstArrayView< Int32 > | machineRanks () 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. | |
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.
Définition à la ligne 49 du fichier MachineMemoryWindowBase.h.
Arcane::MachineMemoryWindowBase::MachineMemoryWindowBase | ( | IParallelMng * | pm, |
Int64 | sizeof_segment, | ||
Int32 | sizeof_elem ) |
Constructeur.
pm | Le ParallelMng contenant les processus du noeud. |
sizeof_segment | La taille du segment de ce sous-domaine (en octet). |
sizeof_elem | La taille d'un élément (en octet). |
Définition à la ligne 29 du fichier MachineMemoryWindowBase.cc.
void Arcane::MachineMemoryWindowBase::barrier | ( | ) | const |
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 112 du fichier MachineMemoryWindowBase.cc.
ConstArrayView< Int32 > Arcane::MachineMemoryWindowBase::machineRanks | ( | ) | const |
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.
Définition à la ligne 103 du fichier MachineMemoryWindowBase.cc.
void Arcane::MachineMemoryWindowBase::resizeSegment | ( | Integer | new_size | ) | const |
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.
new_size | La nouvelle taille de notre segment (en octet). |
Définition à la ligne 94 du fichier MachineMemoryWindowBase.cc.
Span< const std::byte > Arcane::MachineMemoryWindowBase::segmentConstView | ( | ) | const |
Méthode permettant d'obtenir une vue constante sur notre segment de fenêtre mémoire.
Définition à la ligne 67 du fichier MachineMemoryWindowBase.cc.
Méthode permettant d'obtenir une vue constante sur le segment de fenêtre mémoire d'un autre sous-domaine du noeud.
rank | Le rang du sous-domaine. |
Définition à la ligne 76 du fichier MachineMemoryWindowBase.cc.
Span< std::byte > Arcane::MachineMemoryWindowBase::segmentView | ( | ) | const |
Méthode permettant d'obtenir une vue sur notre segment de fenêtre mémoire.
Définition à la ligne 40 du fichier MachineMemoryWindowBase.cc.
Méthode permettant d'obtenir une vue sur le segment de fenêtre mémoire d'un autre sous-domaine du noeud.
rank | Le rang du sous-domaine. |
Définition à la ligne 49 du fichier MachineMemoryWindowBase.cc.
Span< const std::byte > Arcane::MachineMemoryWindowBase::windowConstView | ( | ) | const |
Méthode permettant d'obtenir une vue constante sur toute la fenêtre mémoire.
Définition à la ligne 85 du fichier MachineMemoryWindowBase.cc.
Span< std::byte > Arcane::MachineMemoryWindowBase::windowView | ( | ) | const |
Méthode permettant d'obtenir une vue sur toute la fenêtre mémoire.
Définition à la ligne 58 du fichier MachineMemoryWindowBase.cc.