HP MLIB User's Guide Vol. 2 7th Ed.

Chapter 11 Introduction to Distributed SuperLU 735
What can Distributed SuperLU do?
Another MLIB subprogram used by your program also calls that
subprogram
PA-RISC and Itanium processors
Also note that all the workarounds listed for Itanium are more generic and can
also be used for PA-RISC. Therefore, if you are coding your own version of a
MLIB routine called "mlib_routine" on PA-RISC or Itanium, a Fortran version
might be implemented as:
!$HP$ ALIAS mlib_routine='mlib_routine'
!$HP$ ALIAS mlib_routine_='mlib_routine_'
SUBROUTINE mlib_routine(...)
ENTRY mlib_routine_(...)
...
And a C version might be:
#undef mlib_routine
#undif mlib_routine_
void mlib_routine (...){
...
}
void mlib_routine_(...){
mlib_routine(...);
}
What can Distributed SuperLU do?
HP’s Distributed SuperLU contains subroutines for solving sparse linear
systems of equations AX=B. Here A is a square, nonsingular, n x n sparse
matrix, and X and B are dense n x nrhs matrices, where nrhs is the number of
right-hand sides and solution vectors. Matrix A need not be symmetric or
definite; indeed, Distributed SuperLU is particularly appropriate for matrices
with very unsymmetric structure. Distributed SuperLU is designed for
distributed memory parallel processors, using MPI for interprocess
communication. It can effectively use hundreds of parallel processors on
sufficiently large matrices in order to speed up the computation.
At present, HP’s Distributed SuperLU implementation supports double
precision and double complex. A is stored in a sparse data structure according
to the struct SuperMatrix, which is described in “Distributed SuperLU defined
data structures” on page 739. In particular, A should be supplied in the