Adapteur pour MPI. Plus de détails...
Classes | |
class | RequestSet |
struct | SubRequestInfo |
Fonctions membres publiques | |
MpiAdapter (ITraceMng *msg, IStat *stat, MPI_Comm comm, MpiLock *mpi_lock, IMpiProfiling *mpi_prof=nullptr) | |
MpiAdapter (const MpiAdapter &rhs)=delete | |
MpiAdapter & | operator= (const MpiAdapter &rhs)=delete |
void | destroy () |
Détruit l'instance. Elle ne doit plus être utilisée par la suite. | |
void | broadcast (void *buf, Int64 nb_elem, Int32 root, MPI_Datatype datatype) |
void | allGather (const void *send_buf, void *recv_buf, Int64 nb_elem, MPI_Datatype datatype) |
void | gather (const void *send_buf, void *recv_buf, Int64 nb_elem, Int32 root, MPI_Datatype datatype) |
void | allGatherVariable (const void *send_buf, void *recv_buf, const int *recv_counts, const int *recv_indexes, Int64 nb_elem, MPI_Datatype datatype) |
void | gatherVariable (const void *send_buf, void *recv_buf, const int *recv_counts, const int *recv_indexes, Int64 nb_elem, Int32 root, MPI_Datatype datatype) |
void | scatterVariable (const void *send_buf, const int *send_count, const int *send_indexes, void *recv_buf, Int64 nb_elem, Int32 root, MPI_Datatype datatype) |
void | allToAll (const void *send_buf, void *recv_buf, Int32 count, MPI_Datatype datatype) |
void | allToAllVariable (const void *send_buf, const int *send_counts, const int *send_indexes, void *recv_buf, const int *recv_counts, const int *recv_indexes, MPI_Datatype datatype) |
void | reduce (const void *send_buf, void *recv_buf, Int64 count, MPI_Datatype datatype, MPI_Op op, Int32 root) |
void | allReduce (const void *send_buf, void *recv_buf, Int64 count, MPI_Datatype datatype, MPI_Op op) |
void | scan (const void *send_buf, void *recv_buf, Int64 count, MPI_Datatype datatype, MPI_Op op) |
void | directSendRecv (const void *send_buffer, Int64 send_buffer_size, void *recv_buffer, Int64 recv_buffer_size, Int32 proc, Int64 elem_size, MPI_Datatype data_type) |
Request | directSend (const void *send_buffer, Int64 send_buffer_size, Int32 proc, Int64 elem_size, MPI_Datatype data_type, int mpi_tag, bool is_blocked) |
Request | sendNonBlockingNoStat (const void *send_buffer, Int64 send_buffer_size, Int32 proc, MPI_Datatype data_type, int mpi_tag) |
Version non bloquante de send sans statistique temporelle. | |
Request | directRecv (void *recv_buffer, Int64 recv_buffer_size, Int32 source_rank, Int64 elem_size, MPI_Datatype data_type, int mpi_tag, bool is_blocked) |
Request | receiveNonBlockingNoStat (void *recv_buffer, Int64 recv_buffer_size, Int32 source_rank, MPI_Datatype data_type, int mpi_tag) |
Version non bloquante de receive sans statistiques temporelles. | |
Request | directSendPack (const void *send_buffer, Int64 send_buffer_size, Int32 proc, int mpi_tag, bool is_blocked) |
void | probeRecvPack (UniqueArray< Byte > &recv_buffer, Int32 proc) |
MessageId | probeMessage (PointToPointMessageInfo message) |
MessageSourceInfo | legacyProbeMessage (PointToPointMessageInfo message) |
Request | directRecv (void *recv_buffer, Int64 recv_buffer_size, MessageId message, Int64 elem_size, MPI_Datatype data_type, bool is_blocked) |
Réception via MPI_Mrecv() ou MPI_Imrecv() | |
Request | directRecvPack (void *recv_buffer, Int64 recv_buffer_size, Int32 proc, int mpi_tag, bool is_blocking) |
void | waitAllRequests (ArrayView< Request > requests) |
void | waitSomeRequests (ArrayView< Request > requests, ArrayView< bool > indexes, bool is_non_blocking) |
void | waitSomeRequestsMPI (ArrayView< Request > requests, ArrayView< bool > indexes, ArrayView< MPI_Status > mpi_status, bool is_non_blocking) |
int | commRank () const |
Rang de cette instance dans le communicateur. | |
int | commSize () const |
Nombre de rangs dans le communicateur. | |
MpiMessagePassingMng * | commSplit (bool keep) |
void | freeRequest (Request &request) |
bool | testRequest (Request &request) |
void | enableDebugRequest (bool enable_debug_request) |
MpiLock * | mpiLock () const |
Request | nonBlockingBroadcast (void *buf, Int64 nb_elem, Int32 root, MPI_Datatype datatype) |
Request | nonBlockingAllGather (const void *send_buf, void *recv_buf, Int64 nb_elem, MPI_Datatype datatype) |
Request | nonBlockingGather (const void *send_buf, void *recv_buf, Int64 nb_elem, Int32 root, MPI_Datatype datatype) |
Request | nonBlockingAllToAll (const void *send_buf, void *recv_buf, Int32 count, MPI_Datatype datatype) |
Request | nonBlockingAllReduce (const void *send_buf, void *recv_buf, Int64 count, MPI_Datatype datatype, MPI_Op op) |
Request | nonBlockingAllToAllVariable (const void *send_buf, const int *send_counts, const int *send_indexes, void *recv_buf, const int *recv_counts, const int *recv_indexes, MPI_Datatype datatype) |
Request | nonBlockingBarrier () |
void | barrier () |
int | toMPISize (Int64 count) |
Request | buildRequest (int ret, MPI_Request request) |
Construit une requête Arccore à partir d'une requête MPI. | |
void | setRequestErrorAreFatal (bool v) |
Indique si les erreurs dans la liste des requêtes sont fatales. | |
bool | isRequestErrorAreFatal () const |
void | setPrintRequestError (bool v) |
Indique si on affiche des messages pour les erreurs dans les requêtes. | |
bool | isPrintRequestError () const |
void | setTraceMPIMessage (bool v) |
Indique si on affiche des messages pour chaque appel MPI. | |
bool | isTraceMPIMessage () const |
void | setCheckRequest (bool v) |
Indique si on vérifie les requêtes. | |
bool | isCheckRequest () const |
void | setMpiProfiling (IMpiProfiling *mpi_profiling) |
void | setProfiler (IProfiler *profiler) |
IMpiProfiling * | getMpiProfiling () const |
IProfiler * | profiler () const |
ITimeMetricCollector * | timeMetricCollector () const |
void | setTimeMetricCollector (ITimeMetricCollector *v) |
bool | isAllowNullRankForAnySource () const |
![]() | |
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 privées | |
bool | _waitAllRequestsMPI (ArrayView< Request > requests, ArrayView< bool > indexes, ArrayView< MPI_Status > mpi_status) |
void | _trace (const char *function) |
void | _addRequest (MPI_Request request) |
void | _removeRequest (MPI_Request request) |
void | _checkFatalInRequest () |
MessageId | _probeMessage (MessageRank source, MessageTag tag, bool is_blocking) |
MessageSourceInfo | _legacyProbeMessage (MessageRank source, MessageTag tag, bool is_blocking) |
bool | _handleEndRequests (ArrayView< Request > requests, ArrayView< bool > done_indexes, ArrayView< MPI_Status > status) |
void | _checkHasNoRequests () |
MessageSourceInfo | _buildSourceInfoFromStatus (const MPI_Status &status) |
Attributs privés | |
IStat * | m_stat |
MpiLock * | m_mpi_lock |
IMpiProfiling * | m_mpi_prof |
ITimeMetricCollector * | m_metric_collector = nullptr |
MPI_Comm | m_communicator |
Communicateur MPI. | |
int | m_comm_rank = A_PROC_NULL_RANK |
int | m_comm_size = 0 |
Int64 | m_nb_all_reduce = 0 |
Int64 | m_nb_reduce = 0 |
bool | m_is_trace = false |
RequestSet * | m_request_set = nullptr |
MPI_Request | m_empty_request1 |
Requêtes vides. Voir MpiAdapter.cc pour plus d'infos. | |
MPI_Request | m_empty_request2 |
int | m_recv_buffer_for_empty_request [1] |
int | m_send_buffer_for_empty_request2 [1] |
int | m_recv_buffer_for_empty_request2 [1] |
bool | m_is_allow_null_rank_for_any_source = true |
Membres hérités additionnels | |
![]() | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Adapteur pour MPI.
rendre thread-safe les statistiques
rendre thread-safe le m_allocated_request
Définition à la ligne 47 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Arcane::MessagePassing::Mpi::MpiAdapter::MpiAdapter | ( | ITraceMng * | msg, |
IStat * | stat, | ||
MPI_Comm | comm, | ||
MpiLock * | mpi_lock, | ||
IMpiProfiling * | mpi_prof = nullptr |
||
) |
Ce type de requête est utilisé par openmpi à partir de la version 1.8 (il faut voir pour la 1.6, sachant que la 1.4 et 1.5 ne l'ont pas). Cette requête fonctionne un peu comme MPI_REQUEST_NULL et il est possible qu'elle soit retournée plusieurs fois. Il ne faut donc pas mettre cette requête dans m_allocated_requests. On ne peut pas accéder directement à l'adresse de cette requête vide mais l'implémentation 1.8 de openmpi retourne cette requête lorsqu'on appelle un IRecv avec une source MPI_PROC_NULL. On récupère donc la valeur comme cela.
Définition à la ligne 246 du fichier MpiAdapter.cc.
Références Arccore::Platform::getEnvironmentVariable(), m_communicator, et m_empty_request1.
|
overrideprotected |
Définition à la ligne 312 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 1660 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 1112 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 1691 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 336 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 1363 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 1179 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 1126 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 1671 du fichier MpiAdapter.cc.
Définition à la ligne 409 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 1446 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::allGather | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int64 | nb_elem, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 509 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::allGatherVariable | ( | const void * | send_buf, |
void * | recv_buf, | ||
const int * | recv_counts, | ||
const int * | recv_indexes, | ||
Int64 | nb_elem, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 569 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::allReduce | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int64 | count, | ||
MPI_Datatype | datatype, | ||
MPI_Op | op | ||
) |
Définition à la ligne 736 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::allToAll | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int32 | count, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 619 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::allToAllVariable | ( | const void * | send_buf, |
const int * | send_counts, | ||
const int * | send_indexes, | ||
void * | recv_buf, | ||
const int * | recv_counts, | ||
const int * | recv_indexes, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 657 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::barrier | ( | ) |
Définition à la ligne 710 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::broadcast | ( | void * | buf, |
Int64 | nb_elem, | ||
Int32 | root, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 424 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::buildRequest | ( | int | ret, |
MPI_Request | request | ||
) |
Construit une requête Arccore à partir d'une requête MPI.
Définition à la ligne 327 du fichier MpiAdapter.cc.
Référencé par directRecv(), receiveNonBlockingNoStat(), et sendNonBlockingNoStat().
|
inline |
Rang de cette instance dans le communicateur.
Définition à la ligne 143 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Référencé par Arcane::MessagePassing::Mpi::MpiSerializeMessageList::addMessage(), et Arcane::MessagePassing::Mpi::MpiSerializeMessageList::createAndAddMessage().
|
inline |
Nombre de rangs dans le communicateur.
Définition à la ligne 146 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
MpiMessagePassingMng * Arcane::MessagePassing::Mpi::MpiAdapter::commSplit | ( | bool | keep | ) |
Définition à la ligne 970 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::destroy | ( | ) |
Détruit l'instance. Elle ne doit plus être utilisée par la suite.
Définition à la ligne 353 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::directRecv | ( | void * | recv_buffer, |
Int64 | recv_buffer_size, | ||
Int32 | source_rank, | ||
Int64 | elem_size, | ||
MPI_Datatype | data_type, | ||
int | mpi_tag, | ||
bool | is_blocked | ||
) |
Définition à la ligne 1001 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::directRecv | ( | void * | recv_buffer, |
Int64 | recv_buffer_size, | ||
MessageId | message, | ||
Int64 | elem_size, | ||
MPI_Datatype | data_type, | ||
bool | is_blocked | ||
) |
Réception via MPI_Mrecv() ou MPI_Imrecv()
Définition à la ligne 1227 du fichier MpiAdapter.cc.
Références Arccore::MessagePassing::IStat::add(), buildRequest(), Arccore::TraceAccessor::debug(), Arccore::Trace::High, et Arccore::TraceAccessor::info().
Request Arcane::MessagePassing::Mpi::MpiAdapter::directRecvPack | ( | void * | recv_buffer, |
Int64 | recv_buffer_size, | ||
Int32 | proc, | ||
int | mpi_tag, | ||
bool | is_blocking | ||
) |
Définition à la ligne 1308 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::directSend | ( | const void * | send_buffer, |
Int64 | send_buffer_size, | ||
Int32 | proc, | ||
Int64 | elem_size, | ||
MPI_Datatype | data_type, | ||
int | mpi_tag, | ||
bool | is_blocked | ||
) |
Définition à la ligne 880 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::directSendPack | ( | const void * | send_buffer, |
Int64 | send_buffer_size, | ||
Int32 | proc, | ||
int | mpi_tag, | ||
bool | is_blocked | ||
) |
Définition à la ligne 960 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::directSendRecv | ( | const void * | send_buffer, |
Int64 | send_buffer_size, | ||
void * | recv_buffer, | ||
Int64 | recv_buffer_size, | ||
Int32 | proc, | ||
Int64 | elem_size, | ||
MPI_Datatype | data_type | ||
) |
Définition à la ligne 835 du fichier MpiAdapter.cc.
Définition à la ligne 1680 du fichier MpiAdapter.cc.
Définition à la ligne 1602 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::gather | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int64 | nb_elem, | ||
Int32 | root, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 467 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::gatherVariable | ( | const void * | send_buf, |
void * | recv_buf, | ||
const int * | recv_counts, | ||
const int * | recv_indexes, | ||
Int64 | nb_elem, | ||
Int32 | root, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 550 du fichier MpiAdapter.cc.
IMpiProfiling * Arcane::MessagePassing::Mpi::MpiAdapter::getMpiProfiling | ( | ) | const |
Définition à la ligne 1710 du fichier MpiAdapter.cc.
|
inline |
Définition à la ligne 209 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
bool Arcane::MessagePassing::Mpi::MpiAdapter::isCheckRequest | ( | ) | const |
Définition à la ligne 391 du fichier MpiAdapter.cc.
bool Arcane::MessagePassing::Mpi::MpiAdapter::isPrintRequestError | ( | ) | const |
Définition à la ligne 379 du fichier MpiAdapter.cc.
bool Arcane::MessagePassing::Mpi::MpiAdapter::isRequestErrorAreFatal | ( | ) | const |
Définition à la ligne 368 du fichier MpiAdapter.cc.
|
inline |
Définition à la ligne 187 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
MessageSourceInfo Arcane::MessagePassing::Mpi::MpiAdapter::legacyProbeMessage | ( | PointToPointMessageInfo | message | ) |
Définition à la ligne 1211 du fichier MpiAdapter.cc.
|
inline |
Définition à la ligne 155 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Request Arcane::MessagePassing::Mpi::MpiAdapter::nonBlockingAllGather | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int64 | nb_elem, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 527 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::nonBlockingAllReduce | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int64 | count, | ||
MPI_Datatype | datatype, | ||
MPI_Op | op | ||
) |
Définition à la ligne 767 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::nonBlockingAllToAll | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int32 | count, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 636 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::nonBlockingAllToAllVariable | ( | const void * | send_buf, |
const int * | send_counts, | ||
const int * | send_indexes, | ||
void * | recv_buf, | ||
const int * | recv_counts, | ||
const int * | recv_indexes, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 681 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::nonBlockingBarrier | ( | ) |
Définition à la ligne 723 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::nonBlockingBroadcast | ( | void * | buf, |
Int64 | nb_elem, | ||
Int32 | root, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 447 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::nonBlockingGather | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int64 | nb_elem, | ||
Int32 | root, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 485 du fichier MpiAdapter.cc.
MessageId Arcane::MessagePassing::Mpi::MpiAdapter::probeMessage | ( | PointToPointMessageInfo | message | ) |
Définition à la ligne 1163 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::probeRecvPack | ( | UniqueArray< Byte > & | recv_buffer, |
Int32 | proc | ||
) |
Définition à la ligne 1088 du fichier MpiAdapter.cc.
IProfiler * Arcane::MessagePassing::Mpi::MpiAdapter::profiler | ( | ) | const |
Définition à la ligne 1736 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::receiveNonBlockingNoStat | ( | void * | recv_buffer, |
Int64 | recv_buffer_size, | ||
Int32 | source_rank, | ||
MPI_Datatype | data_type, | ||
int | mpi_tag | ||
) |
Version non bloquante de receive sans statistiques temporelles.
Définition à la ligne 986 du fichier MpiAdapter.cc.
Références buildRequest(), et m_communicator.
void Arcane::MessagePassing::Mpi::MpiAdapter::reduce | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int64 | count, | ||
MPI_Datatype | datatype, | ||
MPI_Op | op, | ||
Int32 | root | ||
) |
Définition à la ligne 786 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::scan | ( | const void * | send_buf, |
void * | recv_buf, | ||
Int64 | count, | ||
MPI_Datatype | datatype, | ||
MPI_Op | op | ||
) |
Définition à la ligne 820 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::scatterVariable | ( | const void * | send_buf, |
const int * | send_count, | ||
const int * | send_indexes, | ||
void * | recv_buf, | ||
Int64 | nb_elem, | ||
Int32 | root, | ||
MPI_Datatype | datatype | ||
) |
Définition à la ligne 591 du fichier MpiAdapter.cc.
Request Arcane::MessagePassing::Mpi::MpiAdapter::sendNonBlockingNoStat | ( | const void * | send_buffer, |
Int64 | send_buffer_size, | ||
Int32 | proc, | ||
MPI_Datatype | data_type, | ||
int | mpi_tag | ||
) |
Version non bloquante de send sans statistique temporelle.
Définition à la ligne 862 du fichier MpiAdapter.cc.
Références buildRequest(), Arccore::TraceAccessor::info(), et m_communicator.
Indique si on vérifie les requêtes.
Cette valeur ne doit être modifiée s'il y a des requêtes en cours.
Définition à la ligne 385 du fichier MpiAdapter.cc.
Références Arcane::MessagePassing::Mpi::MpiAdapter::RequestSet::m_no_check_request.
void Arcane::MessagePassing::Mpi::MpiAdapter::setMpiProfiling | ( | IMpiProfiling * | mpi_profiling | ) |
Définition à la ligne 1701 du fichier MpiAdapter.cc.
Indique si on affiche des messages pour les erreurs dans les requêtes.
Définition à la ligne 374 du fichier MpiAdapter.cc.
Définition à la ligne 1719 du fichier MpiAdapter.cc.
Indique si les erreurs dans la liste des requêtes sont fatales.
Définition à la ligne 363 du fichier MpiAdapter.cc.
|
inline |
Définition à la ligne 207 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Indique si on affiche des messages pour chaque appel MPI.
Définition à la ligne 186 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Définition à la ligne 1623 du fichier MpiAdapter.cc.
|
inline |
Définition à la ligne 206 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
int Arcane::MessagePassing::Mpi::MpiAdapter::toMPISize | ( | Int64 | count | ) |
Définition à la ligne 400 du fichier MpiAdapter.cc.
Définition à la ligne 1319 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::waitSomeRequests | ( | ArrayView< Request > | requests, |
ArrayView< bool > | indexes, | ||
bool | is_non_blocking | ||
) |
Définition à la ligne 1333 du fichier MpiAdapter.cc.
void Arcane::MessagePassing::Mpi::MpiAdapter::waitSomeRequestsMPI | ( | ArrayView< Request > | requests, |
ArrayView< bool > | indexes, | ||
ArrayView< MPI_Status > | mpi_status, | ||
bool | is_non_blocking | ||
) |
Définition à la ligne 1499 du fichier MpiAdapter.cc.
|
private |
Définition à la ligne 218 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 219 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Communicateur MPI.
Définition à la ligne 217 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Référencé par MpiAdapter(), receiveNonBlockingNoStat(), et sendNonBlockingNoStat().
|
private |
Requêtes vides. Voir MpiAdapter.cc pour plus d'infos.
Définition à la ligne 225 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Référencé par MpiAdapter().
|
private |
Définition à la ligne 226 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Définition à la ligne 236 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
Définition à la ligne 222 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 216 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 214 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 215 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 220 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 221 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 227 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 229 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 223 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 228 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.
|
private |
Définition à la ligne 213 du fichier arccore/src/message_passing_mpi/arccore/message_passing_mpi/MpiAdapter.h.