petsc-3.6.2 2015-10-02
Report Typos and Errors

# EventRegLogRegister

Registers an event for logging operations in an application code.

### Synopsis

    #include "petscsys.h"
    PetscErrorCode EventRegLogRegister(PetscEventRegLog eventLog, const char ename[], PetscClassId classid, PetscLogEvent *event)

Not Collective

### Input Parameters

| eventLog | - The EventLog
| ename | - The name associated with the event
| classid | - The classid associated to the class for this event

### Output Parameter

event -The event

### Example of Usage

          int USER_EVENT;
          PetscLogDouble user_event_flops;
          PetscLogEventRegister("User event name",0,&USER_EVENT);
          PetscLogEventBegin(USER_EVENT,0,0,0,0);
             [code segment to monitor]
             PetscLogFlops(user_event_flops);
          PetscLogEventEnd(USER_EVENT,0,0,0,0);

### Notes

PETSc automatically logs library events if the code has been compiled with -DPETSC_USE_LOG (which is the default) and -log, -log_summary, or -log_all are specified. PetscLogEventRegister() is intended for logging user events to supplement this PETSc information.

PETSc can gather data for use with the utilities Jumpshot (part of the MPICH distribution). If PETSc has been compiled with flag -DPETSC_HAVE_MPE (MPE is an additional utility within MPICH), the user can employ another command line option, -log_mpe, to create a logfile, "mpe.log", which can be visualized Jumpshot.

### Keywords

log, event, register

### See Also

PetscLogEventBegin(), PetscLogEventEnd(), PetscLogFlops(), PetscLogEventMPEActivate(), PetscLogEventMPEDeactivate(),
EventLogActivate(), EventLogDeactivate()

Level:developer
Location:src/sys/logging/utils/eventlog.c
Index of all Profiling routines
Table of Contents for all manual pages
Index of all manual pages