Armadillo是一個數學計算庫,可以使用不同的數學庫計算。
首先在http://arma.sourceforge.net/download.html下載Armadillo,4.400版本以上要用VS2012編譯了。
下載完后,去http://arma.sourceforge.net/download.html#windows下其他的庫,example文件夾里自帶着有64位的BlAS & LAPACK(就是下面的)庫.
然后按照Readme.txt的指示,刪除config.hpp里的兩個注釋開啟其他計算庫加速..
根據網上的測試表明,openblas效率比較高,MIL也很好,但后者是商業庫,收費的。
1.首先選擇編譯平台,x64
2.添加包含目錄,/include
3.添加引用目錄,就是有blas_win64_MT.lib的文件夾,examples/lib_win64
4.在項目選項-連接器-輸入-附加依賴項中加入3文件夾中的lib
5.把3文件夾里的dll放到項目目錄下.
5.編譯即可運行.
使用OpenBLAS的方法
其中binary package新版只有.a文件,沒有.lib文件。舊版有.lib文件。
OpenBLAS參考
作者的文章(英文),[重要]作者詳細介紹了每一步的操作:https://github.com/xianyi/OpenBLAS/wiki/How-to-use-OpenBLAS-in-Microsoft-Visual-Studio
這篇是作者的問答http://my.oschina.net/u/274748/blog/101897
還有這篇問答http://my.oschina.net/u/274748/blog/158728
用0.2.8版本x86的lib和dll就行,名字是OpenBLAS-v0.2.8-x86-Win.zip。
效率對比:
求1000×1000矩陣逆的耗時,Release版
64位BLAS&Lapack | OpenBLAS |
8200+ms | 250ms |
效率還是很快的。