我有一个AMD cpu,我正在尝试运行一些使用Intel-MKL的代码。代码比我预期的要慢得多。
当你有一个AMD CPU时,你能加速使用Intel-MKL的代码吗?多么?
发布于 2020-07-30 13:40:18
更新2021-08-26:您可以在2020年-08-31之前加快MKL的旧版本。设置环境变量MKL_DEBUG_CPU_TYPE=5,然后运行代码。
注意:我不知道英特尔删除环境变量解决方案的确切日期或版本。
这种减速会影响使用Intel库并在 CPU上运行的任何(即影响所有操作系统并影响所有编程语言和所有程序(Matlab的旧版本、C、C++、Python、Anaconda-Python、像Tensorflow和Py手电筒这样的机器学习,以及在AMD上使用Intel库的任何东西))。
FYI设置和获取环境变量超出了这个问题的范围,但是这里有一些有用的链接:
bash用户的简单情况,将行export MKL_DEBUG_CPU_TYPE=5附加到用户的.bashrc文件中附注:
关于“为什么/如何设置环境变量会使代码运行得更快?”
你可能在想:“为什么英特尔在他们的MKL库中会有一个软件慢下来呢?
发布于 2021-08-26 17:03:55
截至2021年,英特尔不幸的是防止人们在MKL_DEBUG_CPU_TYPE上使用 删除 的解决方案。这意味着解决方案不再有效,AMD用户要么切换到OpenBLAS,要么继续使用MKL。
若要使用解决方案,请遵循以下方法
conda和NumPy的MKL=2019创建一个MKL=2019环境。MKL_DEBUG_CPU_TYPE =5上述步骤的命令:
conda create -n my_env -c anaconda python numpy mkl=2019.* blas=*=*mklconda activate my_envconda env config vars set MKL_DEBUG_CPU_TYPE=5,就这样!
https://stackoverflow.com/questions/63174453
复制相似问题