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:
Post a Comment