Matlab升級AMD銳龍性能恢復滿血:輕鬆提升60%
Mathwork Matlab是一款極為流行、權威的計算軟件,但是去年11月的時候,有人發現AMD銳龍處理器疑似被它“劣化”,無法正確調用最新指令集,導致性能殘血。Matlab會提前檢測處理器身份,也就是CPUID字符串,如果找到GenuineIntel,也就是正品Intel處理器,就會利用Intel MKL(路徑內核庫),並調用AVX2指令集,獲得理想性能。
但如果是其他,比如Authentic AMD代表的AMD處理器,就會無視其支持的SSE4、AVX、AVX2等新指令集,只會使用古老的SSE指令集,效率自然大大下降。
有開發者做過測試,如果改動系統環境變量,就可以讓Matlab將AMD處理器識別成Intel處理器,性能瞬間就能提升少則20%,多則300%!
Matlab因此飽受質疑,不過幸運的是,在最新版的Matlab 2020a中,這個問題終於被修復了,不管Intel還是AMD處理器,都會默認調用最新指令集。
實測表明,24核心的線程撕裂者3960X、32核心的線程撕裂者3970X在新版Matlab中的性能比舊版分別可以提升48%、60%,從而領先18核心的酷睿i9-10980XE 52%、80 %之多,而之前3960X可是打不過10980XE的。