xref: /petsc/include/petsclogdeprecated.h (revision a496304597bacff3545e802853d69e8765312868)
1*a4963045SJacob Faibussowitsch #pragma once
2b665b14eSToby Isaac 
3b665b14eSToby Isaac #include <petsclog.h>
4b665b14eSToby Isaac 
5b665b14eSToby Isaac /* SUBMANSEC = Profiling */
6b665b14eSToby Isaac 
7b665b14eSToby Isaac /* These data structures are no longer used by any non-deprecated PETSc interface functions */
8b665b14eSToby Isaac 
9b665b14eSToby Isaac typedef struct {
10b665b14eSToby Isaac   char        *name;
11b665b14eSToby Isaac   PetscClassId classid;
12b665b14eSToby Isaac } PetscClassRegInfo;
13b665b14eSToby Isaac 
14b665b14eSToby Isaac typedef struct _n_PetscClassRegLog *PetscClassRegLog;
15b665b14eSToby Isaac struct _n_PetscClassRegLog {
16b665b14eSToby Isaac   int                numClasses;
17b665b14eSToby Isaac   int                maxClasses;
18b665b14eSToby Isaac   PetscClassRegInfo *classInfo;
19b665b14eSToby Isaac };
20b665b14eSToby Isaac 
21b665b14eSToby Isaac typedef struct {
22b665b14eSToby Isaac   PetscClassId   id;
23b665b14eSToby Isaac   int            creations;
24b665b14eSToby Isaac   int            destructions;
25b665b14eSToby Isaac   PetscLogDouble mem;
26b665b14eSToby Isaac   PetscLogDouble descMem;
27b665b14eSToby Isaac } PetscClassPerfInfo;
28b665b14eSToby Isaac 
29b665b14eSToby Isaac typedef struct _n_PetscClassPerfLog *PetscClassPerfLog;
30b665b14eSToby Isaac struct _n_PetscClassPerfLog {
31b665b14eSToby Isaac   int                 numClasses;
32b665b14eSToby Isaac   int                 maxClasses;
33b665b14eSToby Isaac   PetscClassPerfInfo *classInfo;
34b665b14eSToby Isaac };
35b665b14eSToby Isaac 
36b665b14eSToby Isaac typedef struct {
37b665b14eSToby Isaac   char        *name;
38b665b14eSToby Isaac   PetscClassId classid;
39b665b14eSToby Isaac   PetscBool    collective;
40b665b14eSToby Isaac #if defined(PETSC_HAVE_TAU_PERFSTUBS)
41b665b14eSToby Isaac   void *timer;
42b665b14eSToby Isaac #endif
43b665b14eSToby Isaac #if defined(PETSC_HAVE_MPE)
44b665b14eSToby Isaac   int mpe_id_begin;
45b665b14eSToby Isaac   int mpe_id_end;
46b665b14eSToby Isaac #endif
47b665b14eSToby Isaac } PetscEventRegInfo;
48b665b14eSToby Isaac 
49b665b14eSToby Isaac typedef struct _n_PetscEventRegLog *PetscEventRegLog;
50b665b14eSToby Isaac struct _n_PetscEventRegLog {
51b665b14eSToby Isaac   int                numEvents;
52b665b14eSToby Isaac   int                maxEvents;
53b665b14eSToby Isaac   PetscEventRegInfo *eventInfo; /* The registration information for each event */
54b665b14eSToby Isaac };
55b665b14eSToby Isaac 
56b665b14eSToby Isaac typedef struct _n_PetscEventPerfLog *PetscEventPerfLog;
57b665b14eSToby Isaac struct _n_PetscEventPerfLog {
58b665b14eSToby Isaac   int                 numEvents;
59b665b14eSToby Isaac   int                 maxEvents;
60b665b14eSToby Isaac   PetscEventPerfInfo *eventInfo;
61b665b14eSToby Isaac };
62b665b14eSToby Isaac 
63b665b14eSToby Isaac typedef struct _PetscStageInfo {
64b665b14eSToby Isaac   char              *name;
65b665b14eSToby Isaac   PetscBool          used;
66b665b14eSToby Isaac   PetscEventPerfInfo perfInfo;
67b665b14eSToby Isaac   PetscClassPerfLog  classLog;
68b665b14eSToby Isaac #if defined(PETSC_HAVE_TAU_PERFSTUBS)
69b665b14eSToby Isaac   void *timer;
70b665b14eSToby Isaac #endif
71b665b14eSToby Isaac } PetscStageInfo;
72b665b14eSToby Isaac 
73b665b14eSToby Isaac typedef struct _n_PetscStageLog *PetscStageLog;
74b665b14eSToby Isaac struct _n_PetscStageLog {
75b665b14eSToby Isaac   int              numStages;
76b665b14eSToby Isaac   int              maxStages;
77b665b14eSToby Isaac   PetscIntStack    stack;
78b665b14eSToby Isaac   int              curStage;
79b665b14eSToby Isaac   PetscStageInfo  *stageInfo;
80b665b14eSToby Isaac   PetscEventRegLog eventLog;
81b665b14eSToby Isaac   PetscClassRegLog classLog;
82b665b14eSToby Isaac };
83b665b14eSToby Isaac 
8464550dbaSPierre Jolivet PETSC_DEPRECATED_OBJECT(3, 20, 0, "PetscLogGetState()", "PetscStageLog is no longer used.") PETSC_UNUSED static PetscStageLog petsc_stageLog = PETSC_NULLPTR;
85b665b14eSToby Isaac 
86b665b14eSToby Isaac /*@C
87b665b14eSToby Isaac   PetscLogGetStageLog - Deprecated.
88b665b14eSToby Isaac 
89b665b14eSToby Isaac   Level: deprecated
90b665b14eSToby Isaac 
91b665b14eSToby Isaac   Note:
92b665b14eSToby Isaac   PETSc performance logging and profiling is now split up between the logging state (`PetscLogState`) and the log handler (`PetscLogHandler`).
93b665b14eSToby Isaac   The global logging state is obtained with `PetscLogGetState()`; many log handlers may be used at once (`PetscLogHandlerStart()`) and the default log handler is not directly accessible.
94b665b14eSToby Isaac 
95b665b14eSToby Isaac .seealso: [](ch_profiling), `PetscLogEventGetPerfInfo()`
96b665b14eSToby Isaac @*/
97b665b14eSToby Isaac PETSC_DEPRECATED_FUNCTION(3, 20, 0, "PetscLogGetState()", "PetscStageLog is no longer used.") static inline PetscErrorCode PetscLogGetStageLog(PetscStageLog *s)
98b665b14eSToby Isaac {
9964550dbaSPierre Jolivet   *s = PETSC_NULLPTR;
100b665b14eSToby Isaac   return PETSC_SUCCESS;
101b665b14eSToby Isaac }
102b665b14eSToby Isaac 
103b665b14eSToby Isaac /*@C
104b665b14eSToby Isaac   PetscStageLogGetCurrent - Deprecated
105b665b14eSToby Isaac 
106b665b14eSToby Isaac   Level: deprecated
107b665b14eSToby Isaac 
108b665b14eSToby Isaac .seealso: [](ch_profiling)
109b665b14eSToby Isaac @*/
110b665b14eSToby Isaac PETSC_DEPRECATED_FUNCTION(3, 20, 0, "PetscLogStateGetCurrentStage()", "PetscStageLog is no longer used.") static inline PetscErrorCode PetscStageLogGetCurrent(PetscStageLog a, int *b)
111b665b14eSToby Isaac {
112b665b14eSToby Isaac   (void)a;
113b665b14eSToby Isaac   *b = -1;
114b665b14eSToby Isaac   return PETSC_SUCCESS;
115b665b14eSToby Isaac }
116b665b14eSToby Isaac 
117b665b14eSToby Isaac /*@C
118b665b14eSToby Isaac   PetscStageLogGetEventPerfLog - Deprecated
119b665b14eSToby Isaac 
120b665b14eSToby Isaac   Level: deprecated
121b665b14eSToby Isaac 
122b665b14eSToby Isaac   Note:
123b665b14eSToby Isaac   PETSc performance logging and profiling is now split up between the logging state (`PetscLogState`) and the log handler (`PetscLogHandler`).
124b665b14eSToby Isaac   The global logging state is obtained with `PetscLogGetState()`; many log handlers may be used at once (`PetscLogHandlerStart()`) and the default log handler is not directly accessible.
125b665b14eSToby Isaac 
126b665b14eSToby Isaac .seealso: [](ch_profiling)
127b665b14eSToby Isaac @*/
128b665b14eSToby Isaac PETSC_DEPRECATED_FUNCTION(3, 20, 0, "PetscLogStateEventGetInfo()", "PetscStageLog is no longer used.") static inline PetscErrorCode PetscStageLogGetEventPerfLog(PetscStageLog a, int b, PetscEventPerfLog *c)
129b665b14eSToby Isaac {
130b665b14eSToby Isaac   (void)a;
131b665b14eSToby Isaac   (void)b;
13264550dbaSPierre Jolivet   *c = PETSC_NULLPTR;
133b665b14eSToby Isaac   return PETSC_SUCCESS;
134b665b14eSToby Isaac }
135b665b14eSToby Isaac 
13664550dbaSPierre Jolivet PETSC_DEPRECATED_OBJECT(3, 20, 0, "PetscLogLegacyCallbacksBegin()", ) PETSC_UNUSED static PetscErrorCode (*PetscLogPLB)(PetscLogEvent, int, PetscObject, PetscObject, PetscObject, PetscObject) = PETSC_NULLPTR;
13764550dbaSPierre Jolivet PETSC_DEPRECATED_OBJECT(3, 20, 0, "PetscLogLegacyCallbacksBegin()", ) PETSC_UNUSED static PetscErrorCode (*PetscLogPLE)(PetscLogEvent, int, PetscObject, PetscObject, PetscObject, PetscObject) = PETSC_NULLPTR;
13864550dbaSPierre Jolivet PETSC_DEPRECATED_OBJECT(3, 20, 0, "PetscLogLegacyCallbacksBegin()", ) PETSC_UNUSED static PetscErrorCode (*PetscLogPHC)(PetscObject)                                                            = PETSC_NULLPTR;
13964550dbaSPierre Jolivet PETSC_DEPRECATED_OBJECT(3, 20, 0, "PetscLogLegacyCallbacksBegin()", ) PETSC_UNUSED static PetscErrorCode (*PetscLogPHD)(PetscObject)                                                            = PETSC_NULLPTR;
140b665b14eSToby Isaac 
141b665b14eSToby Isaac PETSC_DEPRECATED_FUNCTION(3, 20, 0, "nothing", "PETSc does not guarantee a stack property of logging events.") static inline PetscErrorCode PetscLogPushCurrentEvent_Internal(PetscLogEvent e)
142b665b14eSToby Isaac {
143b665b14eSToby Isaac   (void)e;
144b665b14eSToby Isaac   return PETSC_SUCCESS;
145b665b14eSToby Isaac }
146b665b14eSToby Isaac 
147b665b14eSToby Isaac PETSC_DEPRECATED_FUNCTION(3, 20, 0, "nothing", "PETSc does not guarantee a stack property of logging events.") static inline PetscErrorCode PetscLogPopCurrentEvent_Internal(void)
148b665b14eSToby Isaac {
149b665b14eSToby Isaac   return PETSC_SUCCESS;
150b665b14eSToby Isaac }
151b665b14eSToby Isaac 
152b665b14eSToby Isaac /*@C
153b665b14eSToby Isaac   PetscLogAllBegin - Equivalent to `PetscLogDefaultBegin()`.
154b665b14eSToby Isaac 
155b665b14eSToby Isaac   Logically Collective on `PETSC_COMM_WORLD`
156b665b14eSToby Isaac 
157b665b14eSToby Isaac   Level: deprecated
158b665b14eSToby Isaac 
159b665b14eSToby Isaac   Note:
160b665b14eSToby Isaac   In previous versions, PETSc's documentation stated that `PetscLogAllBegin()` "Turns on extensive logging of objects and events," which was not actually true.
161b665b14eSToby Isaac   The actual way to turn on extensive logging of objects and events was, and remains, to call `PetscLogActions()` and `PetscLogObjects()`.
162b665b14eSToby Isaac 
163b665b14eSToby Isaac .seealso: [](ch_profiling), `PetscLogDump()`, `PetscLogDefaultBegin()`, `PetscLogActions()`, `PetscLogObjects()`
164b665b14eSToby Isaac @*/
165b665b14eSToby Isaac PETSC_DEPRECATED_FUNCTION(3, 20, 0, "PetscLogDefaultBegin()", ) static inline PetscErrorCode PetscLogAllBegin(void)
166b665b14eSToby Isaac {
167b665b14eSToby Isaac   return PetscLogDefaultBegin();
168b665b14eSToby Isaac }
169b665b14eSToby Isaac 
170b665b14eSToby Isaac /*@C
171b665b14eSToby Isaac   PetscLogSet - Deprecated.
172b665b14eSToby Isaac 
173b665b14eSToby Isaac   Level: deprecated
174b665b14eSToby Isaac 
175b665b14eSToby Isaac   Note:
176b665b14eSToby Isaac   PETSc performance logging and profiling is now split up between the logging state (`PetscLogState`) and the log handler (`PetscLogHandler`).
177b665b14eSToby Isaac   The global logging state is obtained with `PetscLogGetState()`; many log handlers may be used at once (`PetscLogHandlerStart()`) and the default log handler is not directly accessible.
178b665b14eSToby Isaac 
179b665b14eSToby Isaac .seealso: [](ch_profiling), `PetscLogEventGetPerfInfo()`
180b665b14eSToby Isaac @*/
181b665b14eSToby Isaac PETSC_DEPRECATED_FUNCTION(3, 20, 0, "PetscLogLegacyCallbacksBegin()", )
182b665b14eSToby Isaac static inline PetscErrorCode PetscLogSet(PetscErrorCode (*a)(int, int, PetscObject, PetscObject, PetscObject, PetscObject), PetscErrorCode (*b)(int, int, PetscObject, PetscObject, PetscObject, PetscObject))
183b665b14eSToby Isaac {
18464550dbaSPierre Jolivet   return PetscLogLegacyCallbacksBegin(a, b, PETSC_NULLPTR, PETSC_NULLPTR);
185b665b14eSToby Isaac }
186