Registered Member
|
I want to use openblas as backend of blas in Eigen. Is it possible? Thank you!
|
Moderator
|
Yes, this should be possible: just compile with -DEIGEN_USE_BLAS and link to openblas.
See http://eigen.tuxfamily.org/dox-devel/To ... elMKL.html for the details. |
Registered Member
|
Well, this does not seem to work with Eigen 3.2.2. First of all, the CMakeFiles.txt file would have to be changed to add the -DEIGEN_USE_BLAS definition:
Anyway, when I define EIGEN_USE_BLAS before the Eigen headers are included:
I get a fatal error during compilation because the header file mkl.h could not be found. But I don't want to use Intel MKL's library, but OpenBLAS. Can Eigen really link to OpenBLAS (or any other BLAS library)? |
Registered Member
|
It's not possible yet in Eigen (version 3.2..
You can refer to this post: viewtopic.php?f=74&t=123117 |
Moderator
|
indeed, you really need to grab the devel branch, not even 3.3-beta1 !
|
Registered Member
|
Does OpenBlas makes things faster when in used?
Which functions of Eigen will use OpenBlas instead of the built in functions? Thank You. |
Moderator
|
All "large enough" matrix-matrix and matrix-vector products (including triangular and symmetric matrices) will call the underlying BLAS implementation, that might be faster than Eigen's built-in ones with multi-threading. For sequential uses, speed should be in par.
|
Registered users: abc72656, Bing [Bot], daret, Google [Bot], Sogou [Bot], Yahoo [Bot]