Tuesday, January 29, 2013



Numerical & other helpful Libraries play a vital role in off-loading effort (especially reducing bugs) from the CFD coder. Here is an incomplete list to mention few popular libraries. Almost all of them are available for FORTRAN and C and are freely available.

I have tried to rate the usage difficulty based on my experience (highly subjective)  starting with '0' being the easiest to implement.

Library Purpose Hardware / Language Difficulty
BLAS CPU - C / FORTRAN Basic Linear Algebra 0
CUBLAS GPU - CUDA Basic Linear Algebra 0
LAPACK CPU - C / FORTRAN Linear Algebra 0
Intel MKL CPU - C / FORTRAN BLAS, LAPACK, Dense and Sparse Solvers 3
AMD ACML CPU - C / FORTRAN BLAS, LAPACK, Dense and Sparse Solvers 3
MAGMA GPU - CUDA / OpenCL Dense algebra 3
PLASMA multi-core CPU - C / FORTRAN Sparse algebra 3
ITSOL CPU(FORTRAN) / GPU(CUDA) Sparse algebra Unknown
SPARSKIT CPU(FORTRAN) / GPU(CUDA) Sparse algebra Unknown
CUSP GPU(CUDA) Sparse algebra Unknown
PetSc
(whole bunch of stuff)
CPU / GPU(CUDA) - MPI/OpenMP/CUDA BLAS, LAPACK, Dense & Sparse algebra 10
ATLAS
(whole bunch of stuff)
CPU / GPU(CUDA) - MPI/OpenMP/CUDA BLAS, LAPACK, Dense & Sparse algebra 10
METIS / ParMETIS CPU Graph partitioning Unknown
Scotch / Pt-Scotch  CPU Graph partitioning Unknown



Do add to the list and your experiences, problems, compilation tricks, etc.............





0 comments:

Subscribe to RSS Feed Follow me on Twitter!