C library for linear algebra [closed]

2019-02-08 16:51发布

问题:

Please, give me some tips for a HIGH PERFORMANCE C library for linear algebra (matrix algebra, eigenvalues, eigenvectors etc.). Can be both open-source or closed-source.

回答1:

  1. CLAPACK (f2c'ed version of LAPACK)
  2. GSL - GNU Scientific Library

EDIT Thanks to comments from osgx:

  • CLAPACK is the library which uder the hood uses very high-performance BLAS library, as do other libraries, like ATLAS.
  • GSL is a standalone C library, not as fast as any based on BLAS. However its performance is still quite good (not extremely good though) and is used quite often; mostly because of its portability.

I know both LAPACK and GSL and I can recommend both of them. LAPACK is very low-level library and GSL may be more comfortable to use, but speaking of good performance -- BLAS-based library it is.



回答2:

ATLAS, maybe?

Edit: if you're open to C++, you should definitely check Eigen, it's a very neat library, and pretty fast too, according to the benchmarks.



回答3:

Again if you are actually looking/open for modern C++ code, Armadillo is getting really hyped/popular. Also see their own benchmarking against IT++ and Newmat.