History log of /petsc/src/mat/impls/aij/mpi/strumpack/makefile (Results 26 – 27 of 27)
Revision Date Author Comments
# 7d6ea485 06-May-2016 Pieter Ghysels <pghysels@lbl.gov>

Remove aij/seq/strumpack.
Rename aij/mpi/strumpack_mpi to aij/mpi/strumpack.
Make aij/mpi/strumpack work for MPISEQAIJ.
Rename CENTRALIZED to REPLICATED.


# 08f5efcf 04-May-2016 Pieter Ghysels <pghysels@lbl.gov>

Add interface to STRUMPACK-sparse.

STRUMPACK-sparse is a sparse direct solver and
preconditioner (using Hierarchically Semi-Separable matrices),
developed at LBNL, released under a BSD license:
http

Add interface to STRUMPACK-sparse.

STRUMPACK-sparse is a sparse direct solver and
preconditioner (using Hierarchically Semi-Separable matrices),
developed at LBNL, released under a BSD license:
http://portal.nersc.gov/project/sparse/strumpack/

This commit adds 2 interfaces to STRUMPACK-sparse: one for
aij/seq and one for aij/mpi matrices. It also adds a script to
the buildsystem to download/compile/install STRUMPACK-sparse.

I can get everything compiled with
./configure --download-strumpack --with-cxx-dialect=C++11 \
--with-openmp --download-scalapack --download-parmetis
--download-metis --download-ptscotch
(There was an issue compiling STRUMPACK-sparse as a shared
library, so it is now always static)

I tested the new code with the src/snes/examples/tutorials/ex5.c
example:
OMP_NUM_THREADS=2 mpirun -n 2 ./ex5 -da_grid_x 100 \
-da_grid_y 100 \
-pc_type lu -pc_factor_mat_solver_package strumpack_mpi \
-ksp_monitor -mat_strumpack_mpi_matinput DISTRIBUTED \
--sp_mc64job 0 --sp_reordering_method scotch --sp_verbose

The aij/mpi solver is called 'strumpack_mpi', the aij/seq solver
is 'strumpack'. All command line options are passed to the
STRUMPACK solver, including -h, which prints out the STRUMPACK
options.

STRUMPACK-sparse has 3 interfaces:
* A sequential/nulti-threaded interface. This one is used with
aij/seq matrices by selecting the 'strumpack' solver.
* A distributed memory solver with replicated interface. This
interface has the same input on every MPI proc (entire matrix
and rhs and solution vectors). Select this for aij/mpi, with
"-pc_type lu -pc_factor_mat_solver_package strumpack_mpi -mat_strumpack_mpi_matinput GLOBAL"
* A fully distributed solver, works with the aij/mpi block-row
distributed input matrix directly. Use with:
"-pc_type lu -pc_factor_mat_solver_package strumpack_mpi -mat_strumpack_mpi_matinput DISTRIBUTED"

Pieter

show more ...


12