12#ifndef ARCCORE_MESSAGEPASSING_MESSAGEPASSINGGLOBAL_H
13#define ARCCORE_MESSAGEPASSING_MESSAGEPASSINGGLOBAL_H
22#if defined(ARCCORE_COMPONENT_arccore_message_passing)
23#define ARCCORE_MESSAGEPASSING_EXPORT ARCCORE_EXPORT
24#define ARCCORE_MESSAGEPASSING_EXTERN_TPL
26#define ARCCORE_MESSAGEPASSING_EXPORT ARCCORE_IMPORT
27#define ARCCORE_MESSAGEPASSING_EXTERN_TPL extern
40using Arcane::ISerializer;
41using Arcane::ITimeMetricCollector;
53static const Int32 A_NULL_RANK =
static_cast<Int32>(-1);
56static const Int32 A_NULL_TAG_VALUE =
static_cast<Int32>(-1);
59static const Int32 A_ANY_SOURCE_RANK =
static_cast<Int32>(-2);
62static const Int32 A_PROC_NULL_RANK =
static_cast<Int32>(-3);
65class SubRequestCompletionInfo;
94class IMachineMemoryWindowBaseInternal;
145namespace Arcane::MessagePassing::internal
151namespace Arccore::MessagePassing::internal
153using Arcane::MessagePassing::internal::BasicSerializeMessage;
154using Arcane::MessagePassing::internal::SerializeMessageList;
167using Arcane::MessagePassing::IControlDispatcher;
168using Arcane::MessagePassing::IMessagePassingMng;
169using Arcane::MessagePassing::ISerializeMessage;
170using Arcane::MessagePassing::ISerializeMessageList;
171using Arcane::MessagePassing::ITypeDispatcher;
186using Arcane::MessagePassing::WaitAll;
190using Arcane::MessagePassing::Blocking;
192using Arcane::MessagePassing::NonBlocking;
195using Arcane::MessagePassing::MsgReceive;
196using Arcane::MessagePassing::MsgSend;
198using Arcane::MessagePassing::IRequestCreator;
199using Arcane::MessagePassing::IRequestList;
200using Arcane::MessagePassing::ISubRequest;
201using Arcane::MessagePassing::MessageId;
202using Arcane::MessagePassing::MessageRank;
203using Arcane::MessagePassing::MessageSourceInfo;
204using Arcane::MessagePassing::MessageTag;
205using Arcane::MessagePassing::PointToPointMessageInfo;
206using Arcane::MessagePassing::Request;
207using Arcane::MessagePassing::MessagePassingMng;
208using Arcane::MessagePassing::SubRequestCompletionInfo;
210using Arcane::MessagePassing::Communicator;
211using Arcane::MessagePassing::IProfiler;
212using Arcane::MessagePassing::IStat;
213using Arcane::MessagePassing::Stat;
214using Arcane::MessagePassing::ISerializeDispatcher;
215using Arcane::MessagePassing::IDispatchers;
216using Arcane::MessagePassing::Dispatchers;
218using Arcane::MessagePassing::A_NULL_RANK;
219using Arcane::MessagePassing::A_NULL_TAG_VALUE;
220using Arcane::MessagePassing::A_ANY_SOURCE_RANK;
221using Arcane::MessagePassing::A_PROC_NULL_RANK;
223using Arcane::MessagePassing::GatherMessageInfoBase;
224using Arcane::MessagePassing::GatherMessageInfo;
226using Arcane::MessagePassing::OneStat;
227using Arcane::MessagePassing::StatData;
228using Arcane::MessagePassing::IControlDispatcher;
229using Arcane::MessagePassing::IMessagePassingMng;
230using Arcane::MessagePassing::PointToPointSerializerMng;
231using Arcane::MessagePassing::ISerializeMessage;
232using Arcane::MessagePassing::ISerializeMessageList;
248using Arcane::MessagePassing::WaitAll;
252using Arcane::MessagePassing::Blocking;
254using Arcane::MessagePassing::NonBlocking;
257using Arcane::MessagePassing::MsgReceive;
258using Arcane::MessagePassing::MsgSend;
#define ARCCORE_DECLARE_REFERENCE_COUNTED_CLASS(class_name)
Macro pour déclarer qu'une classe utilise un compteur de référence.
Interface d'un sérialiseur.
Interface gérant les statistiques sur l'exécution.
Communicateur pour l'échange de message.
Interface du conteneur des dispatchers.
Informations pour un message 'gather'.
Informations pour un message 'gather' pour le type de données DataType.
Interface du conteneur des dispatchers.
Interface du gestionnaire des échanges de messages.
Interface d'un profiler pour les échanges de messages.
Interface d'un créateur de requête.
Liste de requête de messages.
Interface des messages de sérialisation.
Interface d'une liste de messages de sérialisation.
Statistiques sur le parallélisme.
Gestionnaire des échanges de messages.
Informations sur la source d'un message.
Statistique sur un message.
Informations pour envoyer/recevoir un message point à point.
Communications point à point par des 'ISerializer'.
Déclarations des types et méthodes utilisés par les mécanismes d'échange de messages.
@ WaitSome
Attend que tous les messages de la liste soient traités.
@ TestSome
Attend que au moins un message de la liste soit traité
eBlockingType
Type indiquant si un message est bloquant ou non.
ePointToPointMessageType
Type de message point à point.
eReduceType
Types des réductions supportées.
@ ReduceSum
Somme des valeurs.
@ ReduceMin
Minimum des valeurs.
@ ReduceMax
Maximum des valeurs.
Implémentation de la concurrence.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
std::int32_t Int32
Type entier signé sur 32 bits.
Espace de nommage contenant les types et déclarations qui gèrent le mécanisme de parallélisme par éch...
Espace de nom de Arccore.