Could ScaLAPACK help me to solve my problem?

Open discussion regarding features, bugs, issues, vendors, etc.

Could ScaLAPACK help me to solve my problem?

Postby wwong » Sun Aug 13, 2006 4:29 am

Hi, I'm new to ScaLAPACK. Currently, our lab wants to set up a linux cluster(also called Beowulf) to run some simulation program, the program we have developed uses Lapack & Blas Library, for we have to solve matrix eigenvalue problem & matrix computation.

I heared that both lapack and blas are serial, not support parallel computation. So does ScaLAPACK can help us? If so, should we have to rewrite the program which uses Lapack & Blas.
thx in advance...
wwong
 
Posts: 3
Joined: Sun Aug 13, 2006 4:19 am
Location: HANGZHOU, CHINA

Postby kurzak » Mon Aug 14, 2006 12:00 pm

Yes, correct, LAPACK is not parallelized for distributed memory machines.
ScaLAPACK is. You should use ScaLAPACK. You will have do modify your
code. The good news is, if your LAPACK routines have their ScaLAPACK
counterparts, it should not be too hard to use them.
kurzak
 
Posts: 9
Joined: Mon Aug 14, 2006 11:23 am

Postby phymilton » Mon Aug 14, 2006 3:24 pm

Yes, you need to rewrite your code. The starting point is buy a scalapack userguide or view it online to get a general idea how the "parallel" is realized in the distribute memroy computer cluster. The difficulty is depends on what is in your current codes. If every subroutine can be replaced by scalapack counterpart, then how is distribure matrix among computer is a major task.
phymilton
 
Posts: 19
Joined: Mon Jan 24, 2005 11:41 pm
Location: Ames, IA

Postby wwong » Tue Aug 15, 2006 12:48 am

phymilton wrote:Yes, you need to rewrite your code. The starting point is buy a scalapack userguide or view it online to get a general idea how the "parallel" is realized in the distribute memroy computer cluster. The difficulty is depends on what is in your current codes. If every subroutine can be replaced by scalapack counterpart, then how is distribure matrix among computer is a major task.


Thanks for reply. What make me confused now is that is it necessary for us to use MPI library to parallel the program? Can we just use Scalapck without MPI library or we have to use the two library together?
Thanks.
wwong
 
Posts: 3
Joined: Sun Aug 13, 2006 4:19 am
Location: HANGZHOU, CHINA

Postby phymilton » Tue Aug 15, 2006 10:41 am

To my knowledge, MPI library is required to be installed into your cluster as the "background" to run scalapack. But in your code, you can use the Scalapack routines to initial and finalize the computation grid. You do not need to call any mpi routines in your code. But you can also call mpi subroutine if you need to.
phymilton
 
Posts: 19
Joined: Mon Jan 24, 2005 11:41 pm
Location: Ames, IA

Postby wwong » Tue Aug 15, 2006 5:18 pm

phymilton wrote:To my knowledge, MPI library is required to be installed into your cluster as the "background" to run scalapack. But in your code, you can use the Scalapack routines to initial and finalize the computation grid. You do not need to call any mpi routines in your code. But you can also call mpi subroutine if you need to.


I got it!
Thanks, phymilton.
wwong
 
Posts: 3
Joined: Sun Aug 13, 2006 4:19 am
Location: HANGZHOU, CHINA


Return to User Discussion

Who is online

Users browsing this forum: No registered users and 4 guests