16#ifndef ARCANE_PARALLEL_MPITHREAD_INTERNAL_HYBRIDMACHINESHMEMWINBASEINTERNAL_H
17#define ARCANE_PARALLEL_MPITHREAD_INTERNAL_HYBRIDMACHINESHMEMWINBASEINTERNAL_H
22#include "arcane/utils/Ref.h"
24#include "arccore/message_passing/internal/IMachineShMemWinBaseInternal.h"
39class HybridMachineShMemWinBaseInternal
46 ~HybridMachineShMemWinBaseInternal()
override =
default;
76 Int32 m_my_rank_local_proc = 0;
77 Int32 m_nb_rank_local_proc = 0;
78 Int32 m_my_rank_mpi = 0;
82 Int32 m_sizeof_type = 0;
Vue constante d'un tableau de type T.
Interface d'une barrière entre threads.
void shrink() override
Méthode permettant de réduire l'espace mémoire réservé pour les segments au minimum nécessaire.
Span< std::byte > segmentView() override
Méthode permettant d'obtenir une vue sur notre segment.
ConstArrayView< Int32 > machineRanks() const override
Méthode permettant d'obtenir les rangs qui possèdent un segment dans la fenêtre.
void barrier() const override
Méthode permettant d'attendre que tous les processus/threads du noeud appellent cette méthode pour co...
Int32 sizeofOneElem() const override
Méthode permettant d'obtenir la taille d'un élement de la fenêtre.
void addToAnotherSegment() override
Span< const std::byte > segmentConstView() const override
Méthode permettant d'obtenir une vue sur notre segment.
Classe permettant de créer des fenêtres mémoires pour un noeud de calcul.
Classe basée sur MpiMachineShMemWinBaseInternal mais pouvant gérer plusieurs segments par processus.
Référence à une instance.
Vue d'un tableau d'éléments de type T.
Déclarations des types et méthodes utilisés par les mécanismes d'échange de messages.
std::int64_t Int64
Type entier signé sur 64 bits.
std::int32_t Int32
Type entier signé sur 32 bits.