Actual source code: ex71.c
1: const char help[] = "Test getting performance info when the default log handler is not running";
3: #include <petscsys.h>
5: int main(int argc, char **argv)
6: {
7: PetscLogEvent event_id;
8: PetscLogStage stage_id;
9: PetscEventPerfInfo stage_info;
10: PetscEventPerfInfo event_info;
12: PetscCall(PetscInitialize(&argc, &argv, NULL, help));
13: PetscCall(PetscLogEventRegister("My event", PETSC_VIEWER_CLASSID, &event_id));
14: PetscCall(PetscLogStageRegister("My stage", &stage_id));
15: PetscCall(PetscLogStagePush(stage_id));
16: PetscCall(PetscLogEventBegin(event_id, NULL, NULL, NULL, NULL));
17: PetscCall(PetscSleep(0.1));
18: PetscCall(PetscLogEventEnd(event_id, NULL, NULL, NULL, NULL));
19: PetscCall(PetscLogStagePop());
20: PetscCall(PetscLogEventGetPerfInfo(stage_id, event_id, &event_info));
21: PetscCall(PetscLogStageGetPerfInfo(stage_id, &stage_info));
22: PetscCheck(event_info.time == 0.0, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Stats should be zero");
23: PetscCheck(stage_info.time == 0.0, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Stats should be zero");
24: PetscCall(PetscFinalize());
25: return 0;
26: }
28: /*TEST
30: test:
31: suffix: 0
32: args: -petsc_ci 0
33: output_file: output/empty.out
35: TEST*/