12#ifndef ARCANE_IPARALLELNONBLOCKINGCOLLECTIVE_H
13#define ARCANE_IPARALLELNONBLOCKINGCOLLECTIVE_H
19#include "arcane/Parallel.h"
20#include "arcane/VariableTypedef.h"
101#ifdef ARCANE_REAL_NOT_BUILTIN
136#ifdef ARCANE_REAL_NOT_BUILTIN
150#if _NEED_ADVANCED_NBC
188#ifdef ARCANE_REAL_NOT_BUILTIN
208#if _NEED_ADVANCED_NBC
245#ifdef ARCANE_REAL_NOT_BUILTIN
262#if _NEED_ADVANCED_NBC
292#ifdef ARCANE_REAL_NOT_BUILTIN
329#ifdef ARCANE_REAL_NOT_BUILTIN
365#ifdef ARCANE_REAL_NOT_BUILTIN
412#ifdef ARCANE_REAL_NOT_BUILTIN
476#ifdef ARCANE_REAL_NOT_BUILTIN
Déclarations des types utilisés dans Arcane.
Interface du gestionnaire de parallélisme pour un sous-domaine.
Interface des opérations parallèles collectives non bloquantes.
virtual Request barrier()=0
Effectue une barière.
virtual void build()=0
Construit l'instance.
virtual Request allGather(ConstArrayView< char > send_buf, ArrayView< char > recv_buf)=0
Effectue un regroupement sur tous les processeurs. Il s'agit d'une opération collective....
virtual bool hasValidReduceForDerivedType() const =0
Indique si l'implémentation autorise les réductions sur les types dérivés.
virtual IParallelMng * parallelMng() const =0
Gestionnaire de parallélisme associé.
virtual ~IParallelNonBlockingCollective()
Libère les ressources.
virtual Request allReduce(eReduceType rt, ConstArrayView< char > send_buf, ArrayView< char > recv_buf)=0
Effectue la réduction de type rt sur le tableau send_buf et stoque le résultat dans recv_buf.
virtual Request gather(ConstArrayView< char > send_buf, ArrayView< char > recv_buf, Integer rank)=0
Effectue un regroupement sur un processeurs. Il s'agit d'une opération collective....
virtual Request allToAll(ConstArrayView< char > send_buf, ArrayView< char > recv_buf, Integer count)=0
Effectue un broadcast d'une zone mémoire.
Vue constante d'un tableau de type T.
Référence à une instance.
eReduceType
Types des réductions supportées.