Actual source code: PLogEvent.c
2: #include petsc.h
6: int main(int argc,char **argv)
7: {
8: PetscLogDouble x,y;
9: int e1,ierr;
10: PetscTruth flg;
12: PetscInitialize(&argc,&argv,0,0);
13: PetscLogEventRegister(&e1,"*DummyEvent",0);
14: /* To take care of the paging effects */
15: PetscGetTime(&x);
16: PetscLogEventBegin(e1,&x,0,0,0);
17: PetscLogEventEnd(e1,&x,0,0,0);
19: PetscGetTime(&x);
20: /* 10 Occurences of the dummy event */
21: PetscLogEventBegin(e1,&x,0,0,0);
22: PetscLogEventEnd(e1,&x,0,0,0);
23: PetscLogEventBegin(e1,&x,&y,0,0);
24: PetscLogEventEnd(e1,&x,&y,0,0);
25: PetscLogEventBegin(e1,&y,0,0,0);
26: PetscLogEventEnd(e1,&y,0,0,0);
27: PetscLogEventBegin(e1,&x,0,0,0);
28: PetscLogEventEnd(e1,&x,0,0,0);
29: PetscLogEventBegin(e1,&x,&y,0,0);
30: PetscLogEventEnd(e1,&x,&y,0,0);
31: PetscLogEventBegin(e1,&y,0,0,0);
32: PetscLogEventEnd(e1,&y,0,0,0);
33: PetscLogEventBegin(e1,&x,0,0,0);
34: PetscLogEventEnd(e1,&x,0,0,0);
35: PetscLogEventBegin(e1,&x,&y,0,0);
36: PetscLogEventEnd(e1,&x,&y,0,0);
37: PetscLogEventBegin(e1,&y,0,0,0);
38: PetscLogEventEnd(e1,&y,0,0,0);
39: PetscLogEventBegin(e1,&x,&e1,0,0);
40: PetscLogEventEnd(e1,&x,&e1,0,0);
42: PetscGetTime(&y);
43: fprintf(stderr,"%-15s : %e sec, with options : ","PetscLogEvent",(y-x)/10.0);
45: if(PetscOptionsHasName(PETSC_NULL,"-log",&flg),flg) fprintf(stderr,"-log ");
46: if(PetscOptionsHasName(PETSC_NULL,"-log_all",&flg),flg) fprintf(stderr,"-log_all ");
47: if(PetscOptionsHasName(PETSC_NULL,"-log_summary",&flg),flg) fprintf(stderr,"-log_summary ");
48: if(PetscOptionsHasName(PETSC_NULL,"-log_mpe",&flg),flg) fprintf(stderr,"-log_mpe ");
49:
50: fprintf(stderr,"\n");
52: PetscFinalize();
53: return(0);
54: }