The LAPACK forum has moved to https://groups.google.com/a/icl.utk.edu/g/lapack.

What's the differences between driver routine and compuatati

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

What's the differences between driver routine and compuatati

Postby bruce » Thu Nov 02, 2006 2:05 pm

Hi, there:

I am not sure about which routine I should use. I am wondering what is the differences between driver routine and computational routine of Lapack.

The other thing that I want to confirm that is that if the advantage of Scalpack over Lapack is that Scalapack can support parrallel mechanism but Lapack doesn't.

I need to get the eigenvalues and eigenvectors of a large symetric matrix of bio data. I need to do the parallel computation to process them.

Thanks.

Bruce
bruce
 
Posts: 36
Joined: Mon Sep 25, 2006 5:11 am

Postby Julie » Thu Nov 02, 2006 3:49 pm

Bruce,
I am not sure about which routine I should use. I am wondering what is the differences between driver routine and computational routine of Lapack.

Take a look at the LAPACK user's guide
http://www.netlib.org/lapack/lug/node22.html
The subroutines in LAPACK are classified as follows:

* driver routines, each of which solves a complete problem, for example solving a system of linear equations, or computing the eigenvalues of a real symmetric matrix. Users are recommended to use a driver routine if there is one that meets their requirements. They are listed in Section 2.3.

* computational routines, each of which performs a distinct computational task, for example an LU factorization, or the reduction of a real symmetric matrix to tridiagonal form. Each driver routine calls a sequence of computational routines. Users (especially software developers) may need to call computational routines directly to perform tasks, or sequences of tasks, that cannot conveniently be performed by the driver routines. They are listed in Section 2.4.

* auxiliary routines, which in turn can be classified as follows:

o routines that perform subtasks of block algorithms -- in particular, routines that implement unblocked versions of the algorithms;

o routines that perform some commonly required low-level computations, for example scaling a matrix, computing a matrix-norm, or generating an elementary Householder matrix; some of these may be of interest to numerical analysts or software developers and could be considered for future additions to the BLAS;

o a few extensions to the BLAS, such as routines for applying complex plane rotations, or matrix-vector operations involving complex symmetric matrices (the BLAS themselves are not strictly speaking part of LAPACK).


The other thing that I want to confirm that is that if the advantage of Scalpack over Lapack is that Scalapack can support parrallel mechanism but Lapack doesn't.

I need to get the eigenvalues and eigenvectors of a large symetric matrix of bio data. I need to do the parallel computation to process them.

Correct: ScaLAPACK stand for Scalable LAPACK. It includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. It is currently written in a Single-Program-Multiple-Data style using explicit message passing for interprocessor communication.

ScaLAPACK is designed for heterogeneous computing and is portable on any computer that supports MPI or PVM.

You can get some examples from http://www.netlib.org/scalapack/examples/ and http://www.netlib.org/lapack-dev/example-codes.html

Julie
Julie
 
Posts: 299
Joined: Wed Feb 23, 2005 12:32 am
Location: ICL, Denver. Colorado

Thanks

Postby bruce » Sat Nov 04, 2006 8:36 pm

Thanks Julie. It is helpful.
bruce
 
Posts: 36
Joined: Mon Sep 25, 2006 5:11 am


Return to User Discussion

Who is online

Users browsing this forum: No registered users and 3 guests