xref: /petsc/src/benchmarks/PLogEvent.c (revision 5f80ce2ab25dff0f4601e710601cbbcecf323266)
1d8e9fea7SSatish Balay 
2c6db04a5SJed Brown #include <petscsys.h>
38563dfccSBarry Smith #include <petsctime.h>
4173c0623SSatish Balay 
5173c0623SSatish Balay int main(int argc,char **argv)
6173c0623SSatish Balay {
7b0a32e0cSBarry Smith   PetscLogDouble x,y;
8166c7f25SBarry Smith   PetscLogEvent  e1;
98cbcd9ccSBarry Smith   PetscErrorCode ierr;
10ace3abfcSBarry Smith   PetscBool      flg;
11173c0623SSatish Balay 
12a438ae71SBarry Smith   ierr = PetscInitialize(&argc,&argv,0,0);if (ierr) return ierr;
138cbcd9ccSBarry Smith   PetscLogEventRegister("*DummyEvent",0,&e1);
1498d6af09SSatish Balay   /* To take care of the paging effects */
15*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscTime(&x));
16*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&x,0,0,0));
17*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&x,0,0,0));
18173c0623SSatish Balay 
19*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscTime(&x));
20a5b23f4aSJose E. Roman   /* 10 Occurrences of the dummy event */
21*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&x,0,0,0));
22*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&x,0,0,0));
23*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&x,&y,0,0));
24*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&x,&y,0,0));
25*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&y,0,0,0));
26*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&y,0,0,0));
27*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&x,0,0,0));
28*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&x,0,0,0));
29*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&x,&y,0,0));
30*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&x,&y,0,0));
31*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&y,0,0,0));
32*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&y,0,0,0));
33*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&x,0,0,0));
34*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&x,0,0,0));
35*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&x,&y,0,0));
36*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&x,&y,0,0));
37*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&y,0,0,0));
38*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&y,0,0,0));
39*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventBegin(e1,&x,&e1,0,0));
40*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscLogEventEnd(e1,&x,&e1,0,0));
41173c0623SSatish Balay 
42*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscTime(&y));
43b4d8b9abSSatish Balay   fprintf(stderr,"%-15s : %e sec, with options : ","PetscLogEvent",(y-x)/10.0);
44173c0623SSatish Balay 
45*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscOptionsHasName(NULL,"-log",&flg));
468caf3d72SBarry Smith   if (flg) fprintf(stderr,"-log ");
47*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscOptionsHasName(NULL,"-log_all",&flg));
488caf3d72SBarry Smith   if (flg) fprintf(stderr,"-log_all ");
49*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscOptionsHasName(NULL,"-log_view",&flg));
50609bdbeeSBarry Smith   if (flg) fprintf(stderr,"-log_view ");
51*5f80ce2aSJacob Faibussowitsch   CHKERRQ(PetscOptionsHasName(NULL,"-log_mpe",&flg));
528caf3d72SBarry Smith   if (flg) fprintf(stderr,"-log_mpe ");
53173c0623SSatish Balay 
54b4d8b9abSSatish Balay   fprintf(stderr,"\n");
55173c0623SSatish Balay 
56f3fe499bSBarry Smith   ierr = PetscFinalize();
5726f47effSBarry Smith   return ierr;
58173c0623SSatish Balay }
59