MPICL INSTRUMENTATION DATA FORMAT

MPICL produces instrumentation data using the PICL 2.0 trace file
format, as specified in 

  P.H. Worley, A new PICL trace file format
  ORNL Technical Report ORNL/TM-12125, September 1992.

However, the following system event types have been added to represent MPI
events that do not have PICL equivalents. To see the full list,
examine the include file trace/tracedefs.h . Note that the definitions
for many of the new events were taken from the MPI instrumentation
package developed by Loretta Ellwood and Michael Heath.

--------------------------------------------------------------------------
ENABLING, DISABLING, AND QUERYING STATUS OF INTERPROCESSOR COMMUNICATIONS
                      /** key of a set message buffering event **/
#define BUFFERKEY       -15
                      /** key of a generic communication **/
                      /** status request event **/
#define COMMCHECKKEY    -16

--------------------------------------------------------------------------
SEND EVENTS
                      /** key of a buffered send event **/
#define BSENDKEY         -22
                      /** key of a synchronous send event **/
#define SSENDKEY         -23
                      /** key of a ready send event **/
#define RSENDKEY         -24
                      /** key of a "canceled" generic send begin event **/
#define SENDCANCELKEY    -32
                      /** key of a buffered send begin event **/
#define BSENDBEGKEY      -33
                      /** key of a "done" buffered send status request **/
                      /** event **/
#define BSENDDONEKEY     -34
                      /** key of a "not done" buffered send status request **/
                      /** event **/
#define BSENDNOTDONEKEY  -35
                      /** key of a "not blocked" buffered send end event **/
#define BSENDENDKEY      -36
                      /** key of a "blocked" buffered send end event **/
#define BSENDENDBLOCKKEY -37
                      /** key of a "canceled" buffered send begin event **/
#define BSENDCANCELKEY   -38
                      /** key of a synchronous send begin event **/
#define SSENDBEGKEY      -39
                      /** key of a "done" synchronous send status request **/
                      /** event **/
#define SSENDDONEKEY     -40
                      /** key of a "not done" synchronous send status **/
                      /** request event **/
#define SSENDNOTDONEKEY  -41
                      /** key of a "not blocked" synchronous send end event **/
#define SSENDENDKEY      -42
                      /** key of a "blocked" synchronous send end event **/
#define SSENDENDBLOCKKEY -43
                      /** key of a "canceled" synchronous send begin event **/
#define SSENDCANCELKEY   -44
                      /** key of a ready send begin event **/
#define RSENDBEGKEY      -45
                      /** key of a "done" ready send status request **/
                      /** event **/
#define RSENDDONEKEY     -46
                      /** key of a "not done" ready send status request **/
                      /** event **/
#define RSENDNOTDONEKEY  -47
                      /** key of a "not blocked" ready send end event **/
#define RSENDENDKEY      -48
                      /** key of a "blocked" ready send end event **/
#define RSENDENDBLOCKKEY -49
                      /** key of a "canceled" ready send begin event **/
#define RSENDCANCELKEY   -50

--------------------------------------------------------------------------
RECEIVE EVENTS
                      /** key of a "canceled" receive begin event **/
#define RECVCANCELKEY    -62

--------------------------------------------------------------------------
MPI-SPECIFIC POINT-TO-POINT AND COLLECTIVE COMMUNICATION EVENTS
(numbering courtesy of Loretta Ellwood)
                      /** key of a MPI_Pack event **/
#define PACKKEY        -756
                      /** key of a MPI_Unpack event **/
#define UNPACKKEY      -773
                      /** key of a MPI_Allgather event **/
#define ALLGATHERKEY   -780
                      /** key of a MPI_Allreduce event **/
#define ALLREDUCEKEY   -782
                      /** key of a MPI_Alltoall event **/
#define ALLTOALLKEY    -783
                      /** key of a MPI_Bcast event **/
#define BCASTKEY       -785
                      /** key of a MPI_Gather event **/
#define GATHERKEY      -786
                      /** key of a MPI_Reduce event **/
#define REDUCEKEY      -790
                      /** key of a MPI_Reduce_scatter event **/
#define REDUCESCATTERKEY -791
                      /** key of a MPI_Scan event **/
#define SCANKEY        -792
                      /** key of a MPI_Scatter event **/
#define SCATTERKEY     -793

--------------------------------------------------------------------------
MPI-SPECIFIC CONTEXT EVENTS
(numbering courtesy of Loretta Ellwood)
                      /* key for MPI_Comm_create event */
#define COMMCREATEKEY      -804
                      /* key for MPI_Comm_dup event */
#define COMMDUPKEY         -805
                      /* key for MPI_Comm_free event */
#define COMMFREEKEY        -806
                      /* key for MPI_Comm_split event */
#define COMMSPLITKEY       -812
                      /* key for MPI_Intercomm_create event */
#define INTERCOMMCREATEKEY -826
                      /* key for MPI_Intercomm_merge event */
#define INTERCOMMMERGEKEY  -827
                      /* key for MPI_Cart_create event */
#define CARTCREATEKEY      -841
                      /* key for MPI_Cart_sub event */
#define CARTSUBKEY         -846
                      /* key for MPI_Graph_create event */
#define GRAPHCREATEKEY     -849