Lapack question

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

Re: Lapack question

Postby ilya-fursov » Mon Dec 12, 2016 10:07 am

Probably among the LAPACK solvers, you'd need to look at:
DGESV (for general matrices), or
DSYSV, DSYSV_ROOK, DSYSVX (for symmetric matrices).
All the above are for double precision numbers - so the names begin with "D".

The speed of LAPACK routines highly depends on the underlying BLAS routines performance. If it is reference BLAS you are using, don't expect too good speed. A better option might be to use a tuned version of BLAS (e.g. ATLAS), of Intel MKL. Probably Intel MKL will be the simplest workaround.

Furthermore, when solving linear systems arising from continuous medium problems of large size (as in your case: you mention the solution time is not satisfactory) - it's better to rely on sparse matrices instead of dense matrices you currently use. There exist libraries which provide both direct and iterative solvers for sparse systems.
ilya-fursov
 
Posts: 6
Joined: Thu Nov 10, 2016 9:00 am

Re: Lapack question

Postby Julien Langou » Mon Dec 12, 2016 10:16 am

(1) As mentioned by Ilya, you might be best with a sparse direct solver (MUMPS, UMFPACK, etc.) than with LAPACK since your matrix is sparse.

(2) If your matrices are banded with a small enough bandwidth, then you might want to try LAPACK band solvers. ( For example DGBSV, DPBSV. )

Julien.
Julien Langou
 
Posts: 821
Joined: Thu Dec 09, 2004 12:32 pm
Location: Denver, CO, USA


Return to User Discussion

Who is online

Users browsing this forum: Bing [Bot] and 5 guests