Classes | |
class | RequestSet |
struct | SubRequestInfo |
Définition à la ligne 47 du fichier 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().
|
overrideprotected |
Définition à la ligne 312 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 MpiAdapter.h.
Référencé par Arcane::MessagePassing::Mpi::MpiSerializeMessageList::addMessage().
|
inline |
Nombre de rangs dans le communicateur.
Définition à la ligne 146 du fichier 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(), et buildRequest().
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 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 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 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().
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().
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 MpiAdapter.h.
Indique si on affiche des messages pour chaque appel MPI.
Définition à la ligne 186 du fichier MpiAdapter.h.
Définition à la ligne 1623 du fichier MpiAdapter.cc.
|
inline |
Définition à la ligne 206 du fichier 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.