I developped a serial code for solving global stability problems in
fluid mechanics. This code is based on solutions of eigenproblems.
To do so, I used LAPACK and ARPACK libraries. Since I use a
finite-difference formulation, I work with banded matrices (ZGBTRF and
ZGBTRS LAPACK routines)
which provides an important reduction of time and memory consuming.
Recently, I tried to transform my serial code into a parallel one using
the ScaLAPACK library.
My problem is that the parallel LU factorization routines for banded
matrices (PZGBTRF and PZGBTRS) are based on the Divide and Conquer
algorithm which is well suited for narrow banded matrices
(1<bandwith<100, "A comparison of parallel solvers for diagonally
dominant and general narrow-banded linear systems", P. Arbenz et al.)
and I'm not in this case. Consequently, if I used these routines for my
parallel code, I seriously degrade its performances. However, in the
introduction of the same article, the authors claim that in the case of
wide band, the algorithm for full systems is a good solution.
Nevertheless I did't find corresponding routines in the ScaLAPACK
So, my question is : can we perform LU factorization for general wide
banded systems with the ScaLAPACK library ? If this is not the case, can
I make my own routines by simply modify the ScaLAPACK ones ?
I would be very grateful if you could tell me some indications on how
can I do that.
ENSAM ParisTech Paris
151, boulevard de l'Hopital, Paris, FRANCE.