EPIK Scalable runtime performance measurement system
|
Registration of MPI regions. More...
Data Structures | |
struct | EpkMPItype |
MPI operation event type. More... | |
Functions | |
static int | epk_mycmp (const void *v1, const void *v2) |
Compare function for binary search. | |
void | epk_mpi_enable_init () |
Enable measurement for specific subgroups of MPI functions. | |
void | epk_mpi_register () |
Register MPI functions and initialize data structures. | |
elg_ui1 | epk_is_mpi_collective (const char *str) |
Check if region is flagged collective. | |
elg_ui1 | epk_is_mpi_point2point (const char *str) |
Check if region is flagged point-to-point. | |
elg_ui1 | epk_mpi_eventtype (const char *str) |
Check if region is flagged either point-to-point or collective. | |
Variables | |
static const EpkMPItype | epk_mpi_pt2pt [] |
MPI point-to-point function types. | |
static const EpkMPItype | epk_mpi_colls [] |
MPI collective function types. | |
int | epk_mpi_regid [EPK__MPI_NUMFUNCS+1] |
Region IDs of MPI functions. | |
static const EpkMPItype | epk_mpi_enable_groups [] |
Mapping of string keys to enabling group IDs. | |
elg_ui4 | epk_mpi_enabled = 0 |
Bit vector for runtime measurement wrapper enabling/disabling. |
Request handling for MPI adapter.
elg_ui1 epk_is_mpi_collective | ( | const char * | str | ) |
str | Region name |
elg_ui1 epk_is_mpi_point2point | ( | const char * | str | ) |
str | Region name |
elg_ui1 epk_mpi_eventtype | ( | const char * | str | ) |
str | Region name |
void epk_mpi_register | ( | ) |
Artificial root for MPI-only experiments when no user-code instrumenation is available
static int epk_mycmp | ( | const void * | v1, |
const void * | v2 | ||
) | [static] |
v1 | string to checked |
v2 | pointer to EpkMPItype structure |
strcasecmp
result of two strings const EpkMPItype epk_mpi_colls[] [static] |
const EpkMPItype epk_mpi_enable_groups[] [static] |
{ { "ALL", EPK_MPI_ENABLED_ALL }, { "CG", EPK_MPI_ENABLED_CG }, { "COLL", EPK_MPI_ENABLED_COLL }, { "DEFAULT", EPK_MPI_ENABLED_DEFAULT }, { "ENV", EPK_MPI_ENABLED_ENV }, { "ERR", EPK_MPI_ENABLED_ERR }, { "EXT", EPK_MPI_ENABLED_EXT }, { "IO", EPK_MPI_ENABLED_IO }, { "MISC", EPK_MPI_ENABLED_MISC }, { "P2P", EPK_MPI_ENABLED_P2P }, { "PERF", EPK_MPI_ENABLED_PERF }, { "RMA", EPK_MPI_ENABLED_RMA }, { "SPAWN", EPK_MPI_ENABLED_SPAWN }, { "TOPO", EPK_MPI_ENABLED_TOPO }, { "TYPE", EPK_MPI_ENABLED_TYPE } }
const EpkMPItype epk_mpi_pt2pt[] [static] |
{ { "MPI_Bsend", EPK_MPI_TYPE__SEND }, { "MPI_Ibsend", EPK_MPI_TYPE__SEND }, { "MPI_Irsend", EPK_MPI_TYPE__SEND }, { "MPI_Isend", EPK_MPI_TYPE__SEND }, { "MPI_Issend", EPK_MPI_TYPE__SEND }, { "MPI_Recv", EPK_MPI_TYPE__RECV }, { "MPI_Rsend", EPK_MPI_TYPE__SEND }, { "MPI_Send", EPK_MPI_TYPE__SEND }, { "MPI_Sendrecv", EPK_MPI_TYPE__SEND + EPK_MPI_TYPE__RECV }, { "MPI_Sendrecv_replace", EPK_MPI_TYPE__SEND + EPK_MPI_TYPE__RECV }, { "MPI_Ssend", EPK_MPI_TYPE__SEND }, { "MPI_Start", EPK_MPI_TYPE__SEND }, { "MPI_Startall", EPK_MPI_TYPE__SEND }, { "MPI_Test", EPK_MPI_TYPE__RECV }, { "MPI_Testall", EPK_MPI_TYPE__RECV }, { "MPI_Testany", EPK_MPI_TYPE__RECV }, { "MPI_Testsome", EPK_MPI_TYPE__RECV }, { "MPI_Wait", EPK_MPI_TYPE__RECV }, { "MPI_Waitall", EPK_MPI_TYPE__RECV }, { "MPI_Waitany", EPK_MPI_TYPE__RECV }, { "MPI_Waitsome", EPK_MPI_TYPE__RECV }, }
![]() |
Copyright © 1998–2010 Forschungszentrum Jülich, Jülich Supercomputing Centre |