Actual source code: PLogEvent.c
1: #include <petscsys.h>
2: #include <petsctime.h>
4: int main(int argc,char **argv)
5: {
6: PetscLogDouble x,y;
7: PetscLogEvent e1;
8: PetscBool flg;
10: PetscCall(PetscInitialize(&argc,&argv,0,0));
11: PetscLogEventRegister("*DummyEvent",0,&e1);
12: /* To take care of the paging effects */
13: PetscCall(PetscTime(&x));
14: PetscCall(PetscLogEventBegin(e1,&x,0,0,0));
15: PetscCall(PetscLogEventEnd(e1,&x,0,0,0));
17: PetscCall(PetscTime(&x));
18: /* 10 Occurrences of the dummy event */
19: PetscCall(PetscLogEventBegin(e1,&x,0,0,0));
20: PetscCall(PetscLogEventEnd(e1,&x,0,0,0));
21: PetscCall(PetscLogEventBegin(e1,&x,&y,0,0));
22: PetscCall(PetscLogEventEnd(e1,&x,&y,0,0));
23: PetscCall(PetscLogEventBegin(e1,&y,0,0,0));
24: PetscCall(PetscLogEventEnd(e1,&y,0,0,0));
25: PetscCall(PetscLogEventBegin(e1,&x,0,0,0));
26: PetscCall(PetscLogEventEnd(e1,&x,0,0,0));
27: PetscCall(PetscLogEventBegin(e1,&x,&y,0,0));
28: PetscCall(PetscLogEventEnd(e1,&x,&y,0,0));
29: PetscCall(PetscLogEventBegin(e1,&y,0,0,0));
30: PetscCall(PetscLogEventEnd(e1,&y,0,0,0));
31: PetscCall(PetscLogEventBegin(e1,&x,0,0,0));
32: PetscCall(PetscLogEventEnd(e1,&x,0,0,0));
33: PetscCall(PetscLogEventBegin(e1,&x,&y,0,0));
34: PetscCall(PetscLogEventEnd(e1,&x,&y,0,0));
35: PetscCall(PetscLogEventBegin(e1,&y,0,0,0));
36: PetscCall(PetscLogEventEnd(e1,&y,0,0,0));
37: PetscCall(PetscLogEventBegin(e1,&x,&e1,0,0));
38: PetscCall(PetscLogEventEnd(e1,&x,&e1,0,0));
40: PetscCall(PetscTime(&y));
41: fprintf(stderr,"%-15s : %e sec, with options : ","PetscLogEvent",(y-x)/10.0);
43: PetscCall(PetscOptionsHasName(NULL,"-log",&flg));
44: if (flg) fprintf(stderr,"-log ");
45: PetscCall(PetscOptionsHasName(NULL,"-log_all",&flg));
46: if (flg) fprintf(stderr,"-log_all ");
47: PetscCall(PetscOptionsHasName(NULL,"-log_view",&flg));
48: if (flg) fprintf(stderr,"-log_view ");
49: PetscCall(PetscOptionsHasName(NULL,"-log_mpe",&flg));
50: if (flg) fprintf(stderr,"-log_mpe ");
52: fprintf(stderr,"\n");
54: PetscCall(PetscFinalize());
55: return 0;
56: }