Shi Jin jinzishuai at
Mon Feb 12 22:43:52 CST 2007

Hi All,

Thank you very much for the help you gave me in tuning
my code. I now think it is important for us to take
advantage of the symmetric positive definiteness
property of our Matrix, i.e., we should use the
conjugate gradient (CG) method with incomplete
Cholesky decomposition (ICC) as the pre-conditioner (I
assume this is commonly accepted at least for serial
computation, right?).
However, I am surprised and disappointed to realize
that the -pc_type icc option only exists for seqsbaij
Matrices. In order to parallelize the linear solver, I
have to use the external package BlockSolve95.
I took a look at this package at 
I am very disappointed to see it hasn't been in
development ever since 1997. I am worried it does not
provide a state-of-art performance.

Nevertheless, I gave it a try. The package is not as 
easy to build as common linux software (even much
worse than Petsc), especially according their REAME,
it is unknown to work with linux. However, by
hand-editing the bmake/linux/ file, I seemed
to be able to build the library. However, the examples
doesn't build and the PETSC built with BlockSolve95
gives me errors in linking like:
undefined referece to "dgemv_" and "dgetrf_".

In another place of the PETSC mannul, I found there is
another external package "Spooles" that can also be
used  with mpisbaij and Cholesky PC. But it is also
dated in 1999.

Could anyone give me some advice what is the best way
to go to solve a large sparse symmetric positive
definite linux system efficiently using MPI on a

Thank you very much.

Don't get soaked.  Take a quick peak at the forecast
with the Yahoo! Search weather shortcut.

More information about the petsc-users mailing list