#include "petsc.h" int main(int argc, char *argv[]) { PetscErrorCode ierr; char name[64]; PetscLogEvent e; ierr = PetscInitialize(&argc,&argv,NULL,0);CHKERRQ(ierr); if (!(PetscGlobalRank % 2)) { ierr = PetscLogEventRegister("event1",PETSC_OBJECT_CLASSID,&e);CHKERRQ(ierr); ierr = PetscPrintf(PETSC_COMM_SELF,"[%d] event1 registered as %d\n",PetscGlobalRank,e);CHKERRQ(ierr); } ierr = PetscLogEventRegister("event2",PETSC_OBJECT_CLASSID,&e);CHKERRQ(ierr); ierr = PetscPrintf(PETSC_COMM_SELF,"[%d] event2 registered as %d\n",PetscGlobalRank,e);CHKERRQ(ierr); if (PetscGlobalRank % 2) { ierr = PetscLogEventRegister("event1",PETSC_OBJECT_CLASSID,&e);CHKERRQ(ierr); ierr = PetscPrintf(PETSC_COMM_SELF,"[%d] event1 registered as %d\n",PetscGlobalRank,e);CHKERRQ(ierr); } ierr = PetscLogEventRegister(name,PETSC_OBJECT_CLASSID,&e);CHKERRQ(ierr); ierr = PetscLogEventBegin(e,NULL,NULL,NULL,NULL);CHKERRQ(ierr); ierr = PetscSleep(PetscGlobalRank+1);CHKERRQ(ierr); ierr = PetscLogEventEnd(e,NULL,NULL,NULL,NULL);CHKERRQ(ierr); ierr = PetscFinalize(); return ierr; }