"The Portable, Extensible Toolkit for Scientific Computation (PETSc, pronounced PET-see; the S is silent), is a suite of data structures and routines developed by Argonne National Laboratory for the scalable (parallel) solution of scientific applications modeled by partial differential equations. It employs the Message Passing Interface
(MPI) standard for all message-passing communication. The current
version of PETSc is 3.7. PETSc is the world’s most widely used parallel
numerical software library for partial differential equations and sparse matrix computations.
PETSc is intended for use in large-scale application projects, many ongoing computational science projects are built around the PETSc libraries.
Its careful design allows advanced users to have detailed control over
the solution process. PETSc includes a large suite of parallel linear and nonlinear equation solvers that are easily used in application codes written in C, C++, Fortran and now Python. PETSc provides many of the mechanisms needed within parallel application code, such as simple parallel matrix and vector assembly routines that allow the overlap of communication and computation. In addition, PETSc includes support for parallel distributed arrays useful for finite difference methods.
PETSc consists of a variety of components consisting of major classes and supporting infrastructure. Users typically interact with objects
of the highest level classes relevant to their application, essential
lower level objects such as vectors, and may customize or extend any
others. All major components of PETSc have an extensible plugin
architecture."
Third-party packages PETSc can use for various purposes include
CUDA,
CUSP,
ViennaCL,
OpenCL,
Elemental,
METIS,
MSTK,
PtSCOTCH,
Zoltan,
NetCDF,
HDF5,
TRILINOS,
SuperLU,
MKL,
Hypre,
SCALAPACK,
MUMPS -
Boost - http://www.boost.org/
PAPI - http://icl.cs.utk.edu/papi/index.html
Numpy
FFTW - http://www.fftw.org/
Suitesparse - http://faculty.cse.tamu.edu/davis/suitesparse.html
Chombo - https://commons.lbl.gov/display/chombo/Chombo+-+Software+for+Adaptive+Solutions+of+Partial+Differential+Equations
SUNDIALS - http://computation.llnl.gov/projects/sundials
Chaco - http://www3.cs.stonybrook.edu/~algorith/implement/chaco/implement.shtml
FIAT - http://fenics.readthedocs.io/projects/fiat/en/latest/
SPAI - https://cccs.unibas.ch/lehre/software-packages/
https://www.mcs.anl.gov/petsc/
No comments:
Post a Comment