PaStiX

Summary
PaStiX
OverviewPaStiX (Parallel Sparse matriX package) is a scientific library that provides a high performance parallel solver for very large sparse linear systems based on direct methods.
LinksHomePage of the project : http://pastix.gforge.inria.fr/
Building library
Calling PaStiX from CTo call PaStiX from C refer to pastix function definition.
Calling PaStiX from FortranTo call PaStiX from Fortran refer to pastix_fortran.
PaStiX TeamPlease use this forum for submitting your problems : https://gforge.inria.fr/forum/?group_id=186
Some other solvers
LicensePaStiX is distributed under the CeCILL-C license.

Overview

PaStiX (Parallel Sparse matriX package) is a scientific library that provides a high performance parallel solver for very large sparse linear systems based on direct methods.  Numerical algorithms are implemented in single or double precision (real or complex) using LLt, LDLt and LU with static pivoting (for non symmetric matrices having a symmetric pattern).  This solver provides also an adaptive blockwise iLU(k) factorization that can be used as a parallel preconditioner using approximated supernodes to build a coarser block structure of the incomplete factors.

Links

HomePage of the project : http://pastix.gforge.inria.fr/

Downloads : https://gforge.inria.fr/frs/?group_id=186

Quick reference card : https://gforge.inria.fr/docman/index.php?group_id=186

Publications related to this project can be found on : http://www.labri.fr/perso/ramet/bib/Keyword/SPARSE.html

Murge common solver interface : http://murge.gforge.inria.fr/

Building library

To build PaStiX library

  • copy one config file from src/config/ to config.in,
  • edit this file to set your options,
  • run
make

Check that your installation is working

  • run
make examples
./example/bin/simple -lap 100

After that, PaStiX can be used by

  • including :
install/bin/pastix-conf --incs
  • linking with :
install/bin/pastix-conf --libs

or

install/bin/pastix-conf --libs_murge

See more information in the quick reference card.  (https://gforge.inria.fr/docman/index.php?group_id=186)

Calling PaStiX from C

To call PaStiX from C refer to pastix function definition.

You can get information about some PaStiX parameters by looking at api.h.

You can also have a look at the examples in example/src directory.

Calling PaStiX from Fortran

To call PaStiX from Fortran refer to pastix_fortran.

You can also have a look at the examples in example/src directory.

PaStiX Team

Please use this forum for submitting your problems : https://gforge.inria.fr/forum/?group_id=186

To contact the PaStiX team :

Casadei Astrid : astrid..nosp@m.casadei@inri.nosp@m.a.fr

Faverge Mathieu : fav.nosp@m.erge@labr.nosp@m.i.fr

Lacoste Xavier : xavier..nosp@m.lacoste@inri.nosp@m.a.fr

Ramet Pierre : ra.nosp@m.met@labr.nosp@m.i.fr

License

PaStiX is distributed under the CeCILL-C license.

Copyright 2008 BORDEAUX I UNIVERSITY & INRIA

This software is governed by the CeCILL-C license under French law
and abiding by the rules of distribution of free software. You can
use, modify and/or redistribute the software under the terms of the
CeCILL-C license as circulated by CEA, CNRS and INRIA at the following
URL: "http://www.cecill.info".

As a counterpart to the access to the source code and rights to copy,
modify and redistribute granted by the license, users are provided
only with a limited warranty and the software's author, the holder of
the economic rights, and the successive licensors have only limited
liability.

In this respect, the user's attention is drawn to the risks associated
with loading, using, modifying and/or developing or reproducing the
software by the user in light of its specific status of free software,
that may mean that it is complicated to manipulate, and that also
therefore means that it is reserved for developers and experienced
professionals having in-depth computer knowledge. Users are therefore
encouraged to load and test the software's suitability as regards
their requirements in conditions enabling the security of their
systems and/or data to be ensured and, more generally, to use and
operate it in the same conditions as regards security.

The fact that you are presently reading this means that you have had
knowledge of the CeCILL-C license and that you accept its terms.
void pastix(pastix_data_t **pastix_data,
MPI_Comm pastix_comm,
INT n,
INT *colptr,
INT *row,
FLOAT *avals,
INT *perm,
INT *invp,
FLOAT *b,
INT rhs,
INT *iparm,
double *dparm)
Computes steps of the resolution of Ax=b linear system, using direct methods.
Fortran interface to the pastix function.
Header file containing constants used in PaStiX and provided to users.
Close