xref: /petsc/include/petscbm.h (revision 6d8694c4fbab79f9439f1ad13c0386ba7ee1ca4b)
13444e80cSBarry Smith #pragma once
23444e80cSBarry Smith 
33444e80cSBarry Smith #include <petscis.h>
43444e80cSBarry Smith 
5*ce78bad3SBarry Smith /* MANSEC = Sys */
6*ce78bad3SBarry Smith /* SUBMANSEC = BM */
73444e80cSBarry Smith 
83444e80cSBarry Smith /*S
93444e80cSBarry Smith      PetscBench - Abstract PETSc object that manages a benchmark test
103444e80cSBarry Smith 
113444e80cSBarry Smith    Level: intermediate
123444e80cSBarry Smith 
133444e80cSBarry Smith .seealso: `PetscBenchCreate()`, `PetscBenchDestroy()`, `PetscBenchSetType()`, `PetscBenchType`
143444e80cSBarry Smith S*/
153444e80cSBarry Smith typedef struct _p_PetscBench *PetscBench;
163444e80cSBarry Smith 
173444e80cSBarry Smith /*J
183444e80cSBarry Smith     PetscBenchType - String with the name of a PETSc benchmark test
193444e80cSBarry Smith 
203444e80cSBarry Smith    Level: intermediate
213444e80cSBarry Smith 
223444e80cSBarry Smith .seealso: `PetscBenchCreate()`, `PetscBenchDestroy()`, `PetscBenchSetType()`, `PetscBench`
233444e80cSBarry Smith J*/
243444e80cSBarry Smith typedef const char *PetscBenchType;
253444e80cSBarry Smith 
263444e80cSBarry Smith PETSC_EXTERN PetscClassId PetscBench_CLASSID;
273444e80cSBarry Smith 
283444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchInitializePackage(void);
293444e80cSBarry Smith 
303444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchCreate(MPI_Comm, PetscBench *);
313444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetFromOptions(PetscBench);
323444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetUp(PetscBench);
333444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchRun(PetscBench);
343444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchReset(PetscBench);
353444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetOptionsPrefix(PetscBench, const char[]);
363444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchView(PetscBench, PetscViewer);
373444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchViewFromOptions(PetscBench, PetscObject, const char[]);
383444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchDestroy(PetscBench *);
393444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetType(PetscBench, PetscBenchType);
403444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchGetType(PetscBench, PetscBenchType *);
413444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchRegister(const char[], PetscErrorCode (*)(PetscBench));
423444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetSize(PetscBench, PetscInt);
433444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchGetSize(PetscBench, PetscInt *);
44