xref: /petsc/src/benchmarks/PLogEvent.c (revision a95d84e0230cb0d652d808aead973c41ec535430)
1 
2 #include <petscsys.h>
3 #include <petsctime.h>
4 
5 #undef __FUNCT__
6 #define __FUNCT__ "main"
7 int main(int argc,char **argv)
8 {
9   PetscLogDouble x,y;
10   PetscLogEvent  e1;
11   PetscErrorCode ierr;
12   PetscBool      flg;
13 
14   PetscInitialize(&argc,&argv,0,0);
15   PetscLogEventRegister("*DummyEvent",0,&e1);
16   /* To take care of the paging effects */
17   ierr = PetscTime(&x);CHKERRQ(ierr);
18   ierr = PetscLogEventBegin(e1,&x,0,0,0);CHKERRQ(ierr);
19   ierr = PetscLogEventEnd(e1,&x,0,0,0);CHKERRQ(ierr);
20 
21   ierr = PetscTime(&x);CHKERRQ(ierr);
22   /* 10 Occurences of the dummy event */
23   ierr = PetscLogEventBegin(e1,&x,0,0,0);CHKERRQ(ierr);
24   ierr = PetscLogEventEnd(e1,&x,0,0,0);CHKERRQ(ierr);
25   ierr = PetscLogEventBegin(e1,&x,&y,0,0);CHKERRQ(ierr);
26   ierr = PetscLogEventEnd(e1,&x,&y,0,0);CHKERRQ(ierr);
27   ierr = PetscLogEventBegin(e1,&y,0,0,0);CHKERRQ(ierr);
28   ierr = PetscLogEventEnd(e1,&y,0,0,0);CHKERRQ(ierr);
29   ierr = PetscLogEventBegin(e1,&x,0,0,0);CHKERRQ(ierr);
30   ierr = PetscLogEventEnd(e1,&x,0,0,0);CHKERRQ(ierr);
31   ierr = PetscLogEventBegin(e1,&x,&y,0,0);CHKERRQ(ierr);
32   ierr = PetscLogEventEnd(e1,&x,&y,0,0);CHKERRQ(ierr);
33   ierr = PetscLogEventBegin(e1,&y,0,0,0);CHKERRQ(ierr);
34   ierr = PetscLogEventEnd(e1,&y,0,0,0);CHKERRQ(ierr);
35   ierr = PetscLogEventBegin(e1,&x,0,0,0);CHKERRQ(ierr);
36   ierr = PetscLogEventEnd(e1,&x,0,0,0);CHKERRQ(ierr);
37   ierr = PetscLogEventBegin(e1,&x,&y,0,0);CHKERRQ(ierr);
38   ierr = PetscLogEventEnd(e1,&x,&y,0,0);CHKERRQ(ierr);
39   ierr = PetscLogEventBegin(e1,&y,0,0,0);CHKERRQ(ierr);
40   ierr = PetscLogEventEnd(e1,&y,0,0,0);CHKERRQ(ierr);
41   ierr = PetscLogEventBegin(e1,&x,&e1,0,0);CHKERRQ(ierr);
42   ierr = PetscLogEventEnd(e1,&x,&e1,0,0);CHKERRQ(ierr);
43 
44   ierr = PetscTime(&y);CHKERRQ(ierr);
45   fprintf(stderr,"%-15s : %e sec, with options : ","PetscLogEvent",(y-x)/10.0);
46 
47   ierr = PetscOptionsHasName(NULL,"-log",&flg);CHKERRQ(ierr);
48   if (flg) fprintf(stderr,"-log ");
49   ierr = PetscOptionsHasName(NULL,"-log_all",&flg);CHKERRQ(ierr);
50   if (flg) fprintf(stderr,"-log_all ");
51   ierr = PetscOptionsHasName(NULL,"-log_summary",&flg);CHKERRQ(ierr);
52   if (flg) fprintf(stderr,"-log_summary ");
53   ierr = PetscOptionsHasName(NULL,"-log_mpe",&flg);CHKERRQ(ierr);
54   if (flg) fprintf(stderr,"-log_mpe ");
55 
56   fprintf(stderr,"\n");
57 
58   ierr = PetscFinalize();
59   PetscFunctionReturn(0);
60 }
61