PETSc

What is PETSc?

"PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations. It supports MPI, and GPUs through CUDA or OpenCL, as well as hybrid MPI-GPU parallelism. PETSc (sometimes called PETSc/Tao) also contains the Tao optimization software library" (PETSc website).

How is PETSc loaded?

The below can be used to view all of the installations of PETSc on a particular system, where this example uses Coeus.

$ module avail |& grep -i "petsc"

General/petsc/3.11.2/mvapich2-2.2-psm/gcc-7.2.0

General/petsc/3.8.2/mpich/gcc-7.2

General/petsc/3.8.2/mvapich2-2.2-psm/gcc-7.2

How is PETSc invoked?

To invoke PETSc's MPI binary, use the below. For more on using PETSc, refer to here.

$ module load General/petsc/3.11.2/mvapich2-2.2-psm/gcc-7.2.0

$ petscmpiexecÂ