xref: /petsc/include/petscbm.h (revision 3444e80c71aec716d9691741146d976c79c1d102)
1*3444e80cSBarry Smith #pragma once
2*3444e80cSBarry Smith 
3*3444e80cSBarry Smith #include <petscis.h>
4*3444e80cSBarry Smith 
5*3444e80cSBarry Smith /* SUBMANSEC = Sys */
6*3444e80cSBarry Smith 
7*3444e80cSBarry Smith /*S
8*3444e80cSBarry Smith      PetscBench - Abstract PETSc object that manages a benchmark test
9*3444e80cSBarry Smith 
10*3444e80cSBarry Smith    Level: intermediate
11*3444e80cSBarry Smith 
12*3444e80cSBarry Smith .seealso: `PetscBenchCreate()`, `PetscBenchDestroy()`, `PetscBenchSetType()`, `PetscBenchType`
13*3444e80cSBarry Smith S*/
14*3444e80cSBarry Smith typedef struct _p_PetscBench *PetscBench;
15*3444e80cSBarry Smith 
16*3444e80cSBarry Smith /*J
17*3444e80cSBarry Smith     PetscBenchType - String with the name of a PETSc benchmark test
18*3444e80cSBarry Smith 
19*3444e80cSBarry Smith    Level: intermediate
20*3444e80cSBarry Smith 
21*3444e80cSBarry Smith .seealso: `PetscBenchCreate()`, `PetscBenchDestroy()`, `PetscBenchSetType()`, `PetscBench`
22*3444e80cSBarry Smith J*/
23*3444e80cSBarry Smith typedef const char *PetscBenchType;
24*3444e80cSBarry Smith 
25*3444e80cSBarry Smith PETSC_EXTERN PetscClassId PetscBench_CLASSID;
26*3444e80cSBarry Smith 
27*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchInitializePackage(void);
28*3444e80cSBarry Smith 
29*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchCreate(MPI_Comm, PetscBench *);
30*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetFromOptions(PetscBench);
31*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetUp(PetscBench);
32*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchRun(PetscBench);
33*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchReset(PetscBench);
34*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetOptionsPrefix(PetscBench, const char[]);
35*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchView(PetscBench, PetscViewer);
36*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchViewFromOptions(PetscBench, PetscObject, const char[]);
37*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchDestroy(PetscBench *);
38*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetType(PetscBench, PetscBenchType);
39*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchGetType(PetscBench, PetscBenchType *);
40*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchRegister(const char[], PetscErrorCode (*)(PetscBench));
41*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchSetSize(PetscBench, PetscInt);
42*3444e80cSBarry Smith PETSC_EXTERN PetscErrorCode PetscBenchGetSize(PetscBench, PetscInt *);
43