MPI_Pcontrol(3)                    Open MPI                    MPI_Pcontrol(3)



NAME
       MPI_Pcontrol - Controls profiling.


SYNTAX
C Syntax
       #include <mpi.h>
       int MPI_Pcontrol(const int level, ... )


Fortran Syntax
       INCLUDE 'mpif.h'
       MPI_PCONTROL(LEVEL)
            INTEGER   LEVEL, ...


C++ Syntax
       #include <mpi.h>
       void Pcontrol(const int level, ...)


INPUT PARAMETER
       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 provided
       by calls to MPI_Pcontrol. This vagueness extends to the number of
       arguments to the function, and their datatypes.

       However to provide some level of portability of user codes to different
       profiling libraries, we request the following meanings for certain
       values 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 MPI_Init has been called
       is for profiling to be enabled at the normal default level (i.e., as if
       MPI_Pcontrol had just been called with the argument 1). This allows
       users to link with a profiling library and obtain profile output
       without having to modify their source code at all.

       The provision of MPI_Pcontrol as a no-op in the standard MPI library
       allows users to modify their source code to obtain more detailed
       profiling information, but still be able to link exactly the same code
       against the standard MPI library.


NOTES
       This routine provides a common interface for profiling control. The
       interpretation of level and any other arguments is left to the
       profiling library.

       This function does not return an error value. Consequently, the result
       of calling it before MPI_Init or after MPI_Finalize is undefined.




1.4.1                            Jan 14, 2010                  MPI_Pcontrol(3)
