AMD CPU可以使用MKL


英特爾的 Math Kernel Library (MKL)是科學計算領域廣泛使用的數學庫,但它對競爭對手 AMD 的 CPU 非常不友好,即使 AMD CPU 支持 AVX2 或 SSE3-SSE4,MKL 也只用 SSE1。如果要讓 MKL 更好的支持 AMD CPU,用戶需要修改系統環境變量,設置 MKL_DEBUG_CPU_TYPE=5,強行在 AMD CPU 上使用 AVX2。但英特爾最近釋出了 MKL 2020 Update 1+,移除了這一變量,舊的方法失效了。好消息是英特爾在 MKL 中加入了 Zen 內核,壞消息是 Zen 內核功能並不完備,所以更大的壞消息是科學計算軟件在 AMD CPU 上性能又變差了

對於AMD Zen系列CPU,我還是建議使用MKL的函數庫的,最新版即便不使用debug模式相對於OpenBLAS在numpy上也快上不少。

如果使用環境變量MKL_DEBUG_CPU_TYPE=5可以使numpy運算速度再加快一些,不過需要注意英特爾已經在2021.1以及更新版取消了這個debug模式,想要使用的話必須要把MKL降級到2020.0以及以下。

 

參考:https://zhuanlan.zhihu.com/p/364051698

https://www.chiphell.com/thread-2256348-1-1.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM