R に Intel MKL を導入する
Rを高速化する方法として、Rblas.dllを入れ替えるという手法は以前からあった。
ATLASとかGotoBLASとか。
BLASの高速化 - RjpWiki
今回、Microsoft R Openで使われている Intel MKL をRblas.dllとして利用する方法が紹介されていたので ここにメモをしておく。
教えてもらったツイートはこちら。
素のRにintel MKLを導入する方法を知ったのでMicrosoft R Openは卒業する。https://t.co/tkSQpSrPU7
— fqz (@fqz7c3) 2020年1月8日
ネタ元はこちらのTom Wenseleersさんのコメント。
MRO 3.6 coming?
さらにその元ネタはこちら。
Linking Intel's Math Kernel Library (MKL) to R on Windows - Stack Overflow
1. Intel MKL (Math Kernel Library) をインストールする。配布元はこちら。Customizable Package でOK。
https://software.intel.com/en-us/mkl/choose-download
2.MKLのインストール先の以下の中身を
C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\redist\intel64\mkl C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\redist\intel64\compiler
Rのインストール先の以下のフォルダにコピーする。
C:\Program Files\R\R-3.x.x\bin\x64
3. 元々入っている R の Rblas.dll と Rlapack.dll を適当にリネームする。
4. C:\Program Files\R\R-3.x.x\bin\x64 内に mkl_rt.dll のコピーを二つ作り、それぞれ Rblas.dll と Rlapack.dll にリネームする。