xref: /petsc/src/sys/tests/ex71.c (revision 609caa7c8c030312b00807b4f015fd827bb80932)
147b793e3SToby Isaac const char help[] = "Test getting performance info when the default log handler is not running";
247b793e3SToby Isaac 
347b793e3SToby Isaac #include <petscsys.h>
447b793e3SToby Isaac #include <petscviewer.h>
547b793e3SToby Isaac 
main(int argc,char ** argv)647b793e3SToby Isaac int main(int argc, char **argv)
747b793e3SToby Isaac {
847b793e3SToby Isaac   PetscLogEvent      event_id;
947b793e3SToby Isaac   PetscLogStage      stage_id;
1047b793e3SToby Isaac   PetscEventPerfInfo stage_info;
1147b793e3SToby Isaac   PetscEventPerfInfo event_info;
1247b793e3SToby Isaac 
1347b793e3SToby Isaac   PetscCall(PetscInitialize(&argc, &argv, NULL, help));
1447b793e3SToby Isaac   PetscCall(PetscLogEventRegister("My event", PETSC_VIEWER_CLASSID, &event_id));
1547b793e3SToby Isaac   PetscCall(PetscLogStageRegister("My stage", &stage_id));
1647b793e3SToby Isaac   PetscCall(PetscLogStagePush(stage_id));
1747b793e3SToby Isaac   PetscCall(PetscLogEventBegin(event_id, NULL, NULL, NULL, NULL));
1847b793e3SToby Isaac   PetscCall(PetscSleep(0.1));
1947b793e3SToby Isaac   PetscCall(PetscLogEventEnd(event_id, NULL, NULL, NULL, NULL));
2047b793e3SToby Isaac   PetscCall(PetscLogStagePop());
2147b793e3SToby Isaac   PetscCall(PetscLogEventGetPerfInfo(stage_id, event_id, &event_info));
2247b793e3SToby Isaac   PetscCall(PetscLogStageGetPerfInfo(stage_id, &stage_info));
2347b793e3SToby Isaac   PetscCheck(event_info.time == 0.0, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Stats should be zero");
2447b793e3SToby Isaac   PetscCheck(stage_info.time == 0.0, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Stats should be zero");
2547b793e3SToby Isaac   PetscCall(PetscFinalize());
2647b793e3SToby Isaac   return 0;
2747b793e3SToby Isaac }
2847b793e3SToby Isaac 
2947b793e3SToby Isaac /*TEST
3047b793e3SToby Isaac 
3147b793e3SToby Isaac   test:
3247b793e3SToby Isaac     suffix: 0
336084b924SStefano Zampini     args: -petsc_ci 0
34*3886731fSPierre Jolivet     output_file: output/empty.out
3547b793e3SToby Isaac 
3647b793e3SToby Isaac TEST*/
37