NAME
MMPPIIPPccoonnttrrooll - Controls profiling.
SSYYNNTTAAXX CC SSyynnttaaxx#include
int MPIPcontrol(const int level, ... ) FFoorrttrraann SSyynnttaaxx INCLUDE 'mpif.h' MPIPCONTROL(LEVEL) INTEGER LEVEL, ... CC++++ SSyynnttaaxx#include
void Pcontrol(const int level, ...) IINNPPUUTT PPAARRAAMMEETTEERR level Profiling level.DESCRIPTION
MPI libraries themselves make no use of this routine; they simply return immediately to the user code. However the presence of calls to this routine allows a profiling package to be explicitly called by the user. Since MPI has no control of the implementation of the profiling code, we are unable to specify precisely the semantics that will be providedby calls to MPIPcontrol. This vagueness extends to the number of argu-
ments to the function, and their datatypes. However to provide some level of portability of user codes to differentprofiling libraries, we request the following meanings for certain val-
ues of level: o level==0 Profiling is disabled. o level==1 Profiling is enabled at a normal default level of detail.o level==2 Profile buffers are flushed. (This may be a no-op in
some profilers).o All other values of level have profile library-defined effects
and additional arguments. We also request that the default state after MPIInit has been called is for profiling to be enabled at the normal default level (i.e., as if MPIPcontrol had just been called with the argument 1). This allowsusers to link with a profiling library and obtain profile output with-
out having to modify their source code at all.The provision of MPIPcontrol as a no-op in the standard MPI library
allows users to modify their source code to obtain more detailed pro-
filing information, but still be able to link exactly the same code against the standard MPI library. NNOOTTEESS This routine provides a common interface for profiling control. Theinterpretation of level and any other arguments is left to the profil-
ing library. This function does not return an error value. Consequently, the result of calling it before MPIInit or after MPIFinalize is undefined. Open MPI 1.2 September 2006 MPIPcontrol(3OpenMPI)