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