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:
- CLAPACK (f2c'ed version of LAPACK)
- 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.