[petsc-users] PETSc testing recipes

Satish Balay balay at mcs.anl.gov
Fri Apr 14 17:18:28 CDT 2023


Hm depending on what you are seeking - you'll have to look at multiple places [and co-related the info from them]

 - you can check one of the pipelines to see exactly what jobs are run (and the logs of the jobs for details). for ex:
https://gitlab.com/petsc/petsc/-/pipelines/836609909

 - most of the build scripts are at config/examples/arch-ci-*.py - so thats one way to get a view of what pkgs are tested by what jobs..

balay at p1 /home/balay/petsc (main =)
$ ls config/examples/arch-ci-*.py |wc -l
56

- And wrt specific examples corresponding to external pkg - say - superlu_dist - you can do something like:

balay at p1 /home/balay/petsc (main =)
$ git grep 'requires:' src |grep superlu_dist |head -5
src/ksp/ksp/tests/ex17.c:      requires: superlu_dist complex
src/ksp/ksp/tests/ex17.c:      requires: superlu_dist complex
src/ksp/ksp/tests/ex33.c:      requires: superlu_dist !complex
src/ksp/ksp/tests/ex33.c:      requires: superlu_dist !complex
src/ksp/ksp/tests/ex49.c:      requires: superlu_dist

etc.

- Wrt C++ dialect:

balay at p1 /home/balay/petsc (main =)
$ git grep self.minCxxVersion config/BuildSystem/config/packages
config/BuildSystem/config/packages/AMReX.py:    self.minCxxVersion     = 'c++14'
config/BuildSystem/config/packages/h2opus.py:    self.minCxxVersion          = 'c++14'
config/BuildSystem/config/packages/kokkos.py:    self.minCxxVersion    = 'c++17'
config/BuildSystem/config/packages/raja.py:    self.minCxxVersion      = 'c++14'
config/BuildSystem/config/packages/sycl.py:    self.minCxxVersion    = 'c++17'
balay at p1 /home/balay/petsc (main =)
$ git grep self.maxCxxVersion config/BuildSystem/config/packages
config/BuildSystem/config/packages/MOAB.py:    self.maxCxxVersion     = 'c++14'
config/BuildSystem/config/packages/amgx.py:    self.maxCxxVersion    = 'c++17' # https://github.com/NVIDIA/AMGX/issues/231
config/BuildSystem/config/packages/elemental.py:    self.maxCxxVersion    = 'c++14'
config/BuildSystem/config/packages/grid.py:    self.maxCxxVersion  = 'c++17'
config/BuildSystem/config/packages/kokkos.py:    self.maxCxxVersion    = 'c++17'

However configure determines the max that the compiler supports and
attempts to use that [when only min is set]. And this info is usually
in configure.log [or make.log] for the corresponding build.

Satish


On Fri, 14 Apr 2023, Alexander Lindsay wrote:

> Hi, is there a place I can look to understand the testing recipes used in
> PETSc CI, e.g. what external packages are included (if any), what C++
> dialect is used for any external packages built with C++, etc.?
> 
> Alex
> 



More information about the petsc-users mailing list