14#include "arccore/message_passing_mpi/internal/MpiControlDispatcher.h"
17#include "arccore/message_passing_mpi/internal/MpiAdapter.h"
18#include "arccore/message_passing_mpi/internal/MpiRequestList.h"
20#include "arccore/message_passing/Request.h"
21#include "arccore/message_passing/IMessagePassingMng.h"
27namespace Arcane::MessagePassing::Mpi
33MpiControlDispatcher(MpiAdapter* adapter, IMessagePassingMng* mpm)
35, m_message_passing_mng(mpm)
42void MpiControlDispatcher::
43waitAllRequests(ArrayView<Request> requests)
45 m_adapter->waitAllRequests(requests);
51void MpiControlDispatcher::
52waitSomeRequests(ArrayView<Request> requests,
53 ArrayView<bool> indexes,
56 m_adapter->waitSomeRequests(requests, indexes, is_non_blocking);
62IMessagePassingMng* MpiControlDispatcher::
65 return m_adapter->commSplit(keep);
71Ref<IMessagePassingMng> MpiControlDispatcher::
72splitCommunicator(
bool keep)
74 IMessagePassingMng* mpm = m_adapter->commSplit(keep);
81void MpiControlDispatcher::
90Request MpiControlDispatcher::
93 return m_adapter->nonBlockingBarrier();
99MessageId MpiControlDispatcher::
100probe(
const PointToPointMessageInfo& message)
102 return m_adapter->probeMessage(message);
108MessageSourceInfo MpiControlDispatcher::
109legacyProbe(
const PointToPointMessageInfo& message)
111 return m_adapter->legacyProbeMessage(message);
117IProfiler* MpiControlDispatcher::
120 return m_adapter->profiler();
126void MpiControlDispatcher::
127setProfiler(IProfiler* p)
129 m_adapter->setProfiler(p);
135Ref<IRequestList> MpiControlDispatcher::
136createRequestListRef()
138 return createRef<MpiRequestList>(m_adapter);
Brief list of message exchange functions.
auto makeRef(InstanceType *t) -> Ref< InstanceType >
Creates a reference on a pointer.