Shop menü

NINCSENEK TÖBBÉ HÁTRÁNYBAN AZ AMD PROCESSZOROK MATLAB ALATT

Eddig csak egy lelkes felhasználó által lértehozott weak segítségével használhatták az AMD processzorok az AVX2 utasításkészletet, most azonban a MATLAB friss verziója is lehetőséget ad erre.
Víg Ferenc (J.o.k.e.r)
Víg Ferenc (J.o.k.e.r)
Nincsenek többé hátrányban az AMD processzorok MATLAB alatt

A MathWorks által fejlesztett MATLAB (Matrix Laboratory) egy széles körben használt szoftver és programozási nyelv, amelyet viszonylag könnyű megtanulni és rengeteg lehetőség rejlik benne. A széles körben használt alkalmazás, amit egyebek mellett az oktatásban és a különböző kutatásokban is lehet kamatoztatni, eddig nem bánt túl jól az AMD processzorokkal, ahogy arra 2019 novemberében fény derült. Akkoriban rájöttek, hogy az alkalmazás nem jól kezeli az AMD processzorokat, így nem is működik velük optimálisan, aminek igazából egyszerű oka van.

A korábbi vizsgálatok alapján a MATLAB csomag egyik komponense, az Intel MKL (Math Kernel Library) komponens okozza a galibát, amelyet a beszámolók szerint úgy alakítottak ki, hogy induláskor a „GenuineIntel” CPUID stringet keresi, majd ha nem találja, akkor az AVX2 utasításkészlet helyett az SSE utasításkészletre áll vissza, ami komoly sebességcsökkenést eredményez. A sebességkülönbség mértéke elég nagy szórást mutat, ugyanis feladattól függően 20%-tól akár 300%-ig is terjed, ami azért nem mindegy, ha „AuthenticAMD” processzort használunk.

A fenti problémára egy Reddit felhasználó, Nedflanders1976 még tavaly novemberben kitalált egy trükköt, amelynek köszönhetően az Intel MKL-t meg lehet téveszteni, így az AMD processzorokat is „GenuineIntel” központi egységnek látja, vagyis minden modern utasításkészletet elérhetővé tesz számukra, beleértve az SSE4-et, az AVX-et és az AVX2-t is. Az SSE4 és az AVX egyébként már az AMD FX sorozat óta elérhető az AMD processzorok esetében, míg az AVX2 a RYZEN sorozattal mutatkozott be 2017 folyamán.

Érdekesség, hogy időközben elkészült a MATLAB 2R2020a változata, amely bevezetett egy nagyon fontos változást: a szoftver most már automatikusan elérhetővé teszi az AVX2 támogatást minden olyan AMD processzor számára, amely egyébként rendelkezik vele. Az ExtremeTech munkatársai gyorsan le is tesztelték, milyen változást hoz az újítás, ehhez pedig két AMD és egy Intel processzort vetettek be.

A tesztek szerint az alkalmazás most már tényleg elérhetővé teszi a legjobb teljesítményt nyújtó utasításkészlet használatát, így a RYZEN Threadripper 3960X és 3970X modellek 200% feletti gyorsulásra képesek az alapállapothoz képest, így maguk mögé tudják utasítani a Core i9-10980XE-t. Korábban erre csak akkor volt lehetőségük, ha a felhasználó bevetette Nedflander1976 trükkjét.

Neked ajánljuk

    Tesztek

      Kapcsolódó cikkek

      Vissza az oldal tetejére