Provided by: openmpi-doc_2.1.1-8_all bug

NAME

       MPI_T_pvar_get_info - Query information from a performance variable

SYNTAX

C Syntax

       #include <mpi.h>
       int MPI_T_pvar_get_info(int pvar_index, char *name, int *name_len,
                               int *verbosity, int *var_class, MPI_Datatype *datatype, MPI_T_enum *enumtype,
                               char *desc, int *desc_len, int *bind, int *readonly, int *continuous,
                               int *atomic)

INPUT PARAMETERS

       pvar_index
                 Index of the performance variable to be queried.

INPUT/OUTPUT PARAMETERS

       name_len  Length of the string and/or buffer for name.

       desc_len  Length of the string and/or buffer for desc.

OUTPUT PARAMETERS

       name      Buffer to return the string containing the name of the performance variable.

       verbosity Verbosity level of this variable.

       var_class Class of performance variable.

       datatype  MPI datatype of the information stored in the performance variable.

       enumtype  Optional descriptor for enumeration information.

       desc      Buffer  to  return  the  string  containing  the  description of the performance
                 variable.

       bind      Type of MPI object to which this variable must be bound.

       readonly  Flag indicating whether the variable can be written/reset.

       continuous
                 Flag  indicating  whether  the  variable  can  be  started  and  stopped  or  is
                 continuously active.

       atomic    Flag indicating whether the variable can be atomically read and reset.

DESCRIPTION

       MPI_T_pvar_get_info  can  be  used  to  query information from a performance variable. The
       function returns the verbosity, class, datatype, enumeration  type,  and  binding  of  the
       queried  control  variable  in the arguments verbosity, var_class, datatype, enumtype, and
       bind respectively. Flags indicating whether the  variable  is  read-only,  continuous,  or
       atomic are returns in readonly, continuous, and atomic accordingly. See MPI-3 § 14.3.7 for
       more information. See the man page for MPI_T_cvar_get_info  for  information  on  variable
       verbosity.

VARIABLE CLASS

       Performance  variables  are  categorized  into classes which describe their initial value,
       valid types, and behavior. The class returned in the var_class parameter may be one of the
       following:

       MPI_T_PVAR_CLASS_STATE
         Variable  represents  a  set  of discrete states that may be described by an enumerator.
         Variables of this class must be represented by an MPI_INT. The  starting  value  is  the
         current state of the variable.

       MPI_T_PVAR_CLASS_LEVEL
         Variable represents the current utilization level of a resource. Variables of this class
         must be represented by an MPI_UNSIGNED,  MPI_UNSIGNED_LONG,  MPI_UNSIGNED_LONG_LONG,  or
         MPI_DOUBLE. The starting value is the current utilization level of the resource.

       MPI_T_PVAR_CLASS_SIZE
         Variable  represents  the  fixed  size  of  a  resource.  Variables  of  this  class are
         represented  by   an   MPI_UNSIGNED,   MPI_UNSIGNED_LONG,   MPI_UNSIGNED_LONG_LONG,   or
         MPI_DOUBLE. The starting value is the current size of the resource.

       MPI_T_PVAR_CLASS_PERCENTAGE
         Variable represents the current precentage utilization level of a resource. Variables of
         this class are  represented  by  an  MPI_DOUBLE.  The  starting  value  is  the  current
         percentage utilization of the resource.

       MPI_T_PVAR_CLASS_HIGHWATERMARK
         Variable  represents  the  high watermark of the utilization of a resource. Variables of
         this    class    are    represented    by    an     MPI_UNSIGNED,     MPI_UNSIGNED_LONG,
         MPI_UNSIGNED_LONG_LONG,  or MPI_DOUBLE. The starting value is the current utilization of
         the resource.

       MPI_T_PVAR_CLASS_HIGHWATERMARK
         Variable represents the low watermark of the utilization of  a  resource.  Variables  of
         this     class     are    represented    by    an    MPI_UNSIGNED,    MPI_UNSIGNED_LONG,
         MPI_UNSIGNED_LONG_LONG, or MPI_DOUBLE. The starting value is the current utilization  of
         the resource.

       MPI_T_PVAR_CLASS_COUNTER
         Variable  represents a count of the number of occurrences of a specific event. Variables
         of  this   class   are   represented   by   an   MPI_UNSIGNED,   MPI_UNSIGNED_LONG,   or
         MPI_UNSIGNED_LONG_LONG. The starting value is 0.

       MPI_T_PVAR_CLASS_COUNTER
         Variable  represents  an  aggregated  value that represents a sum of arguments processed
         during a specific event.  Variables of this class are represented  by  an  MPI_UNSIGNED,
         MPI_UNSIGNED_LONG, MPI_UNSIGNED_LONG_LONG, or MPI_DOUBLE. The starting value is 0.

       MPI_T_PVAR_CLASS_TIMER
         Variable represents the aggregated time spent by the MPI implementation while processing
         an event, type of event, or section of code. Variables of this class are represented  by
         an  MPI_UNSIGNED,  MPI_UNSIGNED_LONG,  MPI_UNSIGNED_LONG_LONG,  or  MPI_DOUBLE.  If  the
         variable is represented by an MPI_DOUBLE the units will be the same  as  those  used  by
         MPI_Wtime(). The starting value is 0.

       MPI_T_PVAR_CLASS_GENERIC
         Variable  does  not fit into any other class. Can by represented by an type supported by
         the MPI tool information interface (see DATATYPE). Starting value is variable specific.

         For more information see MPI-3 § 14.3.7.

DATATYPE

       The datatype returned by  MPI_T_pvar_get_info  is  restricted  to  one  of  the  following
       datatypes:  MPI_INT,  MPI_UNSIGNED,  MPI_UNSIGNED_LONG, MPI_UNSIGNED_LONG_LONG, MPI_COUNT,
       MPI_CHAR, and MPI_DOUBLE. For more information on datatypes in the  MPI  Tool  information
       interface see MPI-3 § 14.3.5.

BINDING

       Performance  variables  may  be  bound  to an MPI object. The binding returned in the bind
       parameter may be one of the following:

       MPI_T_BIND_NO_OBJECT
                 No object

       MPI_T_BIND_MPI_COMM
                 MPI communicator

       MPI_T_BIND_MPI_DATATYPE
                 MPI datatype

       MPI_T_BIND_MPI_ERRHANDLER
                 MPI error handler

       MPI_T_BIND_MPI_FILE
                 MPI file handle

       MPI_T_BIND_MPI_GROUP
                 MPI group

       MPI_T_BIND_MPI_OP
                 MPI reduction operator

       MPI_T_BIND_MPI_REQUEST
                 MPI request

       MPI_T_BIND_MPI_WIN
                 MPI window for one-sided communication

       MPI_T_BIND_MPI_MESSAGE
                 MPI message object

       MPI_T_BIND_MPI_INFO
                 MPI info object

                 For more information see MPI-3 § 14.3.2.

NOTES

       This MPI tool interface function returns two strings. This function takes two argument for
       each  string:  a buffer to store the string, and a length which must initially specify the
       size of the buffer. If the length passed is n then this function will copy at most n  -  1
       characters of the string into the corresponding buffer and set the length to the number of
       characters copied - 1. If the length argument is NULL or the value specified in the length
       is  0  the corresponding string buffer is ignored and the string is not returned. For more
       information see MPI-3 § 14.3.3.

ERRORS

       MPI_T_pvar_get_info() will fail if:

       [MPI_T_ERR_NOT_INITIALIZED]
                 The MPI Tools interface not initialized

       [MPI_T_ERR_INVALID_INDEX]
                 The performance variable index is invalid

SEE ALSO

       MPI_T_cvar_get_info