Az Intel prezentálta mennyit ér az AVX2 a gyakorlatban

Az AVX és az AVX2 utasításkészlet a végfelhasználói szoftverek piacán nem számít nagy sikernek, hiszen a tesztprogramokat leszámítva alig van olyan tényleges alkalmazás, amely használná az említett újításokat. A legtöbb program még ma is valamelyik modernebb SSE utasításkészletre alapoz, aminek hátterében az is fontos szerepet játszik, hogy az Intel a legolcsóbb, tömegpiacra szánt processzorain letiltja az AVX-et, ami abszolút nem kedvez a terjedésének. A professzionális szoftverek piacán azonban már vannak pozitív jelek, és az Intel az utóbbi időben folyamatosan kampányol amellett, hogy a szoftvercégek kihasználják az AVX2-t.

Hirdetés

A vállalat összefogott a Dassault Systèmes nevű szoftvercéggel, amelynek eredménye egy olyan SIMULIA programverzió volt, amely képes kihasználni az AVX2-t. Mint ismeretes a SIMULIA egy komplett szimulációs csomag a mérnökök számára, amely tartalmazza a CATIA Analysis alkalmazásokat, illetve az Abaqus végeselemes analízis terméksorozatát. Ezek segítségével az adott termék fejlesztése lerövidül, mivel a célzott szimulációval csökkenthető az elkészítendő prototípusok száma.

A szimuláció azonban erőforrás-igényes, így a Dassault Systèmes által használt Abaqus végeselemes analízis implementáció rengeteg dupla pontosság melletti mátrixszorzást (DGEMM) alkalmaz az Intel Math Kernel Libraries csomag által, így az AVX2 igazán hasznos lehet. Különösen a háromoperandusos FMA utasítás bevetése jelent igazán értékes extrát.


Az AVX2 előnye az AVX-es kódhoz képest

Az Intel egy Xeon E5-2697 v3 jelzésű processzoron kimérte a Dassault Systèmes teljesen optimalizált implementációját aktív és inaktív AVX2 utasításkészlet mellett. A fenti képről látható, hogy AVX2-vel a processzor mindig gyorsabb volt. Az előny a feladattól függően 3% és 11% közötti volt, ami a probléma gyakorlati jellegét figyelembe véve igen jó értéknek számít.

Azt fontos kiemelni, hogy az AVX2 ugyan kétszeres szélességű vektoroperációkat enged meg az AVX-hez viszonyítva, vagyis joggal várhatnánk el közel kétszeres gyorsulást is, de a szélesebb vektorfeldolgozókat egy gyakorlati alkalmazásban nagyon nehéz kihasználni azokban a programozási modellekben, amikkel az AVX2 elérhető. Éppen ezért az Intel és a Dassault Systèmes által prezentált teljesítménytöbblet már elég jónak számít. Persze a kód alacsonyabb szinten optimalizálható tovább, de az sok esetben rendkívül magas többletköltséget jelent, így nem mindig éri meg erre az ösvényre rálépni.

Az Intel el szeretné érni, hogy a professzionális piacon érdekelt szoftvercégek több figyelmet szenteljenek az AVX2-nek, mivel a gyakorlatban is kimutatható előnyei vannak az utasításkészlet direkt támogatásának. Erre egyébként megvan az esély, és a Dassault Systèmes érdeklődése biztató jel. A végfelhasználói szoftverek piacán viszont továbbra sem látni az áttörés lehetőségét. Egyszerűen az AVX támogatásának beépítése aránytalan többletköltség lenne ahhoz képest, hogy mennyi előnyre lehet szert tenni vele.

  • Kapcsolódó cégek:
  • Intel

Azóta történt

Előzmények

Hirdetés