Interface des messages pour le type Type. Plus de détails...
#include <arcane/parallel/mpithread/HybridParallelDispatch.h>
Classes | |
class | AllToAllVariableInfo |
class | MinMaxSumInfo |
class | ReduceInfo |
Types publics | |
using | AllDispatchView = ArrayView< HybridParallelDispatch< Type > * > |
Types publics hérités de Arcane::IParallelDispatchT< Type > | |
typedef Parallel::Request | Request |
typedef Parallel::eReduceType | eReduceType |
using | PointToPointMessageInfo = Parallel::PointToPointMessageInfo |
Fonctions membres publiques | |
HybridParallelDispatch (ITraceMng *tm, HybridParallelMng *parallel_mng, HybridMessageQueue *message_queue, ArrayView< HybridParallelDispatch< Type > * > all_dispatchs) | |
void | finalize () override |
void | broadcast (Span< Type > send_buf, Int32 sub_domain) override |
void | allGather (Span< const Type > send_buf, Span< Type > recv_buf) override |
void | allGatherVariable (Span< const Type > send_buf, Array< Type > &recv_buf) override |
void | gather (Span< const Type > send_buf, Span< Type > recv_buf, Int32 rank) override |
void | gatherVariable (Span< const Type > send_buf, Array< Type > &recv_buf, Int32 rank) override |
void | scatterVariable (Span< const Type > send_buf, Span< Type > recv_buf, Int32 root) override |
void | allReduce (eReduceType op, Span< Type > send_buf) override |
void | allToAll (Span< const Type > send_buf, Span< Type > recv_buf, Int32 count) override |
void | allToAllVariable (Span< const Type > send_buf, ConstArrayView< Int32 > send_count, ConstArrayView< Int32 > send_index, Span< Type > recv_buf, ConstArrayView< Int32 > recv_count, ConstArrayView< Int32 > recv_index) override |
Request | send (Span< const Type > send_buffer, Int32 proc, bool is_blocked) override |
Request | send (Span< const Type > send_buffer, const PointToPointMessageInfo &message) override |
Request | receive (Span< Type > recv_buffer, Int32 rank, bool is_blocked) override |
Request | receive (Span< Type > recv_buffer, const PointToPointMessageInfo &message) override |
Request | nonBlockingAllReduce (eReduceType op, Span< const Type > send_buf, Span< Type > recv_buf) override |
Request | nonBlockingAllGather (Span< const Type > send_buf, Span< Type > recv_buf) override |
Request | nonBlockingBroadcast (Span< Type > send_buf, Int32 rank) override |
Request | nonBlockingGather (Span< const Type > send_buf, Span< Type > recv_buf, Int32 rank) override |
Request | nonBlockingAllToAll (Span< const Type > send_buf, Span< Type > recv_buf, Int32 count) override |
Request | nonBlockingAllToAllVariable (Span< const Type > send_buf, ConstArrayView< Int32 > send_count, ConstArrayView< Int32 > send_index, Span< Type > recv_buf, ConstArrayView< Int32 > recv_count, ConstArrayView< Int32 > recv_index) override |
Request | gather (Arccore::MessagePassing::GatherMessageInfo< Type > &) override |
void | broadcast (ArrayView< Type > send_buf, Integer sub_domain) override |
void | allGather (ConstArrayView< Type > send_buf, ArrayView< Type > recv_buf) override |
void | allGatherVariable (ConstArrayView< Type > send_buf, Array< Type > &recv_buf) override |
void | gather (ConstArrayView< Type > send_buf, ArrayView< Type > recv_buf, Integer rank) override |
void | gatherVariable (ConstArrayView< Type > send_buf, Array< Type > &recv_buf, Integer rank) override |
void | scatterVariable (ConstArrayView< Type > send_buf, ArrayView< Type > recv_buf, Integer root) override |
void | allToAll (ConstArrayView< Type > send_buf, ArrayView< Type > recv_buf, Integer count) override |
void | allToAllVariable (ConstArrayView< Type > send_buf, Int32ConstArrayView send_count, Int32ConstArrayView send_index, ArrayView< Type > recv_buf, Int32ConstArrayView recv_count, Int32ConstArrayView recv_index) override |
Request | send (ConstArrayView< Type > send_buffer, Integer proc, bool is_blocked) override |
Request | recv (ArrayView< Type > recv_buffer, Integer proc, bool is_blocked) override |
void | allReduce (eReduceType op, ArrayView< Type > send_buf) override |
void | send (ConstArrayView< Type > send_buffer, Integer proc) override |
void | recv (ArrayView< Type > recv_buffer, Integer proc) override |
void | sendRecv (ConstArrayView< Type > send_buffer, ArrayView< Type > recv_buffer, Integer proc) override |
Type | allReduce (eReduceType op, Type send_buf) override |
Type | scan (eReduceType op, Type send_buf) override |
void | scan (eReduceType op, ArrayView< Type > send_buf) override |
void | computeMinMaxSum (Type val, Type &min_val, Type &max_val, Type &sum_val, Int32 &min_rank, Int32 &max_rank) override |
void | computeMinMaxSum (ConstArrayView< Type > values, ArrayView< Type > min_values, ArrayView< Type > max_values, ArrayView< Type > sum_values, ArrayView< Int32 > min_ranks, ArrayView< Int32 > max_ranks) override |
ITypeDispatcher< Type > * | toArccoreDispatcher () override |
Int32 | globalRank () const |
Fonctions membres publiques hérités de Arccore::TraceAccessor | |
TraceAccessor (ITraceMng *m) | |
Construit un accesseur via le gestionnaire de trace m. | |
TraceAccessor (const TraceAccessor &rhs) | |
Constructeur par recopie. | |
TraceAccessor & | operator= (const TraceAccessor &rhs) |
Opérateur de recopie. | |
virtual | ~TraceAccessor () |
Libère les ressources. | |
ITraceMng * | traceMng () const |
Gestionnaire de trace. | |
TraceMessage | info () const |
Flot pour un message d'information. | |
TraceMessage | pinfo () const |
Flot pour un message d'information en parallèle. | |
TraceMessage | info (char category) const |
Flot pour un message d'information d'une catégorie donnée. | |
TraceMessage | pinfo (char category) const |
Flot pour un message d'information parallèle d'une catégorie donnée. | |
TraceMessage | info (bool v) const |
Flot pour un message d'information. | |
TraceMessage | warning () const |
Flot pour un message d'avertissement. | |
TraceMessage | pwarning () const |
TraceMessage | error () const |
Flot pour un message d'erreur. | |
TraceMessage | perror () const |
TraceMessage | log () const |
Flot pour un message de log. | |
TraceMessage | plog () const |
Flot pour un message de log. | |
TraceMessage | logdate () const |
Flot pour un message de log précédé de la date. | |
TraceMessage | fatal () const |
Flot pour un message d'erreur fatale. | |
TraceMessage | pfatal () const |
Flot pour un message d'erreur fatale en parallèle. | |
TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
Flot pour un message de debug. | |
Trace::eDebugLevel | configDbgLevel () const |
Niveau debug du fichier de configuration. | |
TraceMessage | info (Int32 verbose_level) const |
Flot pour un message d'information d'un niveau donné | |
TraceMessage | linfo () const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
TraceMessage | linfo (Int32 relative_level) const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
void | fatalMessage (const StandaloneTraceMessage &o) const |
Fonctions membres publiques hérités de Arcane::IParallelDispatchT< Type > | |
virtual void | broadcast (ArrayView< Type > send_buf, Int32 rank)=0 |
virtual void | gather (ConstArrayView< Type > send_buf, ArrayView< Type > recv_buf, Int32 rank)=0 |
virtual void | gatherVariable (ConstArrayView< Type > send_buf, Array< Type > &recv_buf, Int32 rank)=0 |
virtual void | scatterVariable (ConstArrayView< Type > send_buf, ArrayView< Type > recv_buf, Int32 root)=0 |
virtual Request | send (ConstArrayView< Type > send_buffer, Int32 rank, bool is_blocked)=0 |
virtual Request | recv (ArrayView< Type > recv_buffer, Int32 rank, bool is_blocked)=0 |
virtual void | send (ConstArrayView< Type > send_buffer, Int32 rank)=0 |
virtual void | recv (ArrayView< Type > recv_buffer, Int32 rank)=0 |
virtual void | sendRecv (ConstArrayView< Type > send_buffer, ArrayView< Type > recv_buffer, Int32 proc)=0 |
Fonctions membres publiques hérités de Arccore::ReferenceCounterImpl | |
void | addReference () |
void | removeReference () |
void | _internalAddReference () |
bool | _internalRemoveReference () |
Fonctions membres publiques hérités de Arccore::MessagePassing::ITypeDispatcher< Type > | |
virtual void | broadcast (Span< Type > send_buf, Int32 rank)=0 |
virtual void | gather (Span< const Type > send_buf, Span< Type > recv_buf, Int32 rank)=0 |
virtual void | gatherVariable (Span< const Type > send_buf, Array< Type > &recv_buf, Int32 rank)=0 |
virtual void | scatterVariable (Span< const Type > send_buf, Span< Type > recv_buf, Int32 root)=0 |
virtual void | allToAll (Span< const Type > send_buf, Span< Type > recv_buf, Int32 count)=0 |
virtual void | allToAllVariable (Span< const Type > send_buf, ConstArrayView< Int32 > send_count, ConstArrayView< Int32 > send_index, Span< Type > recv_buf, ConstArrayView< Int32 > recv_count, ConstArrayView< Int32 > recv_index)=0 |
virtual Request | send (Span< const Type > send_buffer, Int32 rank, bool is_blocked)=0 |
virtual Request | receive (Span< Type > recv_buffer, Int32 rank, bool is_blocked)=0 |
virtual Request | nonBlockingBroadcast (Span< Type > send_buf, Int32 rank)=0 |
virtual Request | nonBlockingGather (Span< const Type > send_buf, Span< Type > recv_buf, Int32 rank)=0 |
virtual Request | nonBlockingAllToAll (Span< const Type > send_buf, Span< Type > recv_buf, Int32 count)=0 |
virtual Request | nonBlockingAllToAllVariable (Span< const Type > send_buf, ConstArrayView< Int32 > send_count, ConstArrayView< Int32 > send_index, Span< Type > recv_buf, ConstArrayView< Int32 > recv_count, ConstArrayView< Int32 > recv_index)=0 |
Attributs publics | |
AllDispatchView | m_all_dispatchs |
ReduceInfo | m_reduce_infos |
MinMaxSumInfo | m_min_max_sum_infos |
Fonctions membres privées | |
ARCCORE_INTERNAL_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS () | |
void | _collectiveBarrier () |
void | _allReduceOrScan (eReduceType op, Span< Type > send_buf, bool is_scan) |
void | _applyReduceOperator (eReduceType op, Span< Type > result, AllDispatchView dispatch_view, Int32 first_rank, Int32 last_rank) |
Attributs privés | |
HybridParallelMng * | m_parallel_mng = nullptr |
Int32 | m_local_rank = A_NULL_RANK |
Int32 | m_local_nb_rank = 0 |
Int32 | m_global_rank = A_NULL_RANK |
Int32 | m_global_nb_rank = 0 |
Int32 | m_mpi_rank = A_NULL_RANK |
Int32 | m_mpi_nb_rank = 0 |
Span< Type > | m_broadcast_view |
Span< const Type > | m_const_view |
Span< Type > | m_recv_view |
Span< const Type > | m_send_view |
AllToAllVariableInfo | m_alltoallv_infos |
HybridMessageQueue * | m_message_queue = nullptr |
MpiParallelDispatchT< Type > * | m_mpi_dispatcher = nullptr |
Membres hérités additionnels | |
Fonctions membres protégées hérités de Arccore::TraceAccessor | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Interface des messages pour le type Type.
Définition à la ligne 100 du fichier HybridParallelDispatch.h.
using Arcane::MessagePassing::HybridParallelDispatch< Type >::AllDispatchView = ArrayView<HybridParallelDispatch<Type>*> |
Définition à la ligne 233 du fichier HybridParallelDispatch.h.
Arcane::MessagePassing::HybridParallelDispatch< Type >::HybridParallelDispatch | ( | ITraceMng * | tm, |
HybridParallelMng * | parallel_mng, | ||
HybridMessageQueue * | message_queue, | ||
ArrayView< HybridParallelDispatch< Type > * > | all_dispatchs | ||
) |
Définition à la ligne 55 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 90 du fichier HybridParallelDispatch.cc.
|
private |
Définition à la ligne 846 du fichier HybridParallelDispatch.cc.
|
private |
Définition à la ligne 816 du fichier HybridParallelDispatch.cc.
|
private |
Définition à la ligne 1047 du fichier HybridParallelDispatch.cc.
|
inlineoverridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 180 du fichier HybridParallelDispatch.h.
|
overridevirtual |
Implémente Arccore::MessagePassing::ITypeDispatcher< Type >.
Définition à la ligne 320 du fichier HybridParallelDispatch.cc.
|
inlineoverridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 182 du fichier HybridParallelDispatch.h.
|
overridevirtual |
Implémente Arccore::MessagePassing::ITypeDispatcher< Type >.
Définition à la ligne 371 du fichier HybridParallelDispatch.cc.
|
inlineoverridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 201 du fichier HybridParallelDispatch.h.
|
overridevirtual |
Implémente Arccore::MessagePassing::ITypeDispatcher< Type >.
Définition à la ligne 935 du fichier HybridParallelDispatch.cc.
|
overridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 778 du fichier HybridParallelDispatch.cc.
|
inlineoverridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 190 du fichier HybridParallelDispatch.h.
|
override |
Définition à la ligne 470 du fichier HybridParallelDispatch.cc.
|
inlineoverridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 192 du fichier HybridParallelDispatch.h.
|
override |
Définition à la ligne 490 du fichier HybridParallelDispatch.cc.
|
inlineoverride |
Définition à la ligne 178 du fichier HybridParallelDispatch.h.
|
override |
Définition à la ligne 286 du fichier HybridParallelDispatch.cc.
|
overridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 238 du fichier HybridParallelDispatch.cc.
|
overridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 199 du fichier HybridParallelDispatch.cc.
|
overridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 99 du fichier HybridParallelDispatch.cc.
|
overridevirtual |
Réimplémentée à partir de Arccore::MessagePassing::ITypeDispatcher< Type >.
Définition à la ligne 1038 du fichier HybridParallelDispatch.cc.
|
inlineoverride |
Définition à la ligne 184 du fichier HybridParallelDispatch.h.
|
override |
Définition à la ligne 356 du fichier HybridParallelDispatch.cc.
|
inlineoverride |
Définition à la ligne 186 du fichier HybridParallelDispatch.h.
|
override |
Définition à la ligne 405 du fichier HybridParallelDispatch.cc.
|
inline |
Définition à la ligne 234 du fichier HybridParallelDispatch.h.
|
overridevirtual |
Implémente Arccore::MessagePassing::ITypeDispatcher< Type >.
Définition à la ligne 955 du fichier HybridParallelDispatch.cc.
|
overridevirtual |
Implémente Arccore::MessagePassing::ITypeDispatcher< Type >.
Définition à la ligne 944 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 989 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 1001 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 966 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 977 du fichier HybridParallelDispatch.cc.
|
overridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 740 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 712 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 757 du fichier HybridParallelDispatch.cc.
|
inlineoverride |
Définition à la ligne 199 du fichier HybridParallelDispatch.h.
|
overridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 1029 du fichier HybridParallelDispatch.cc.
|
overridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 1018 du fichier HybridParallelDispatch.cc.
|
inlineoverride |
Définition à la ligne 188 du fichier HybridParallelDispatch.h.
|
override |
Définition à la ligne 419 du fichier HybridParallelDispatch.cc.
|
inlineoverride |
Définition à la ligne 197 du fichier HybridParallelDispatch.h.
|
overridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 723 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 692 du fichier HybridParallelDispatch.cc.
|
override |
Définition à la ligne 766 du fichier HybridParallelDispatch.cc.
|
inlineoverridevirtual |
Implémente Arcane::IParallelDispatchT< Type >.
Définition à la ligne 219 du fichier HybridParallelDispatch.h.
AllDispatchView Arcane::MessagePassing::HybridParallelDispatch< Type >::m_all_dispatchs |
Définition à la ligne 235 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 243 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 239 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 240 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 227 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 226 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 225 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 224 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 252 du fichier HybridParallelDispatch.h.
MinMaxSumInfo Arcane::MessagePassing::HybridParallelDispatch< Type >::m_min_max_sum_infos |
Définition à la ligne 248 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 253 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 229 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 228 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 223 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 241 du fichier HybridParallelDispatch.h.
ReduceInfo Arcane::MessagePassing::HybridParallelDispatch< Type >::m_reduce_infos |
Définition à la ligne 247 du fichier HybridParallelDispatch.h.
|
private |
Définition à la ligne 242 du fichier HybridParallelDispatch.h.