Intel Cannonlake (2017): AVX512-Erweiterungen für Endkunden
Ein Update des Clang-Compilers gibt neue Details zu den kommenden Skylake-EP- sowie Cannonlake-S-CPUs preis. Beide sollen AVX512 unterstützen, Letztere noch mit neuen Erweiterungen. Das Instruktionsset wird es damit zum ersten Mal in den Endkundenbereich schaffen, während vorerst ausschließlich Server-Ableger bedient werden.
Ursprünglich hatte Intel das AVX512-Instruktionsset im Sommer 2013 vorgestellt. Zum ersten Mal kommt es bei den Xeon-Phi-Ablegern zum Einsatz, die auf angepassten Silvermont-Kernen im 14-Nanometer-Verfahren basieren. Wie erwartet werden die ersten AVX512-Instruktionen ihren Weg aber auch in die Skylake-EP-Prozessoren (und Skylake EX) finden. Ein Update des Clang-Compilers, der öffentlich aufrufbar ist, gibt entsprechende Details preis.
Demnach werden die Server-Ableger von Skylake die Erweiterungen AVX512CD, AVX512DQ, AVX512BW und AVX512VL aufbauend auf der Basisfunktion AVX512F ("Foundation") unterstützen. Die Kollegen von computerbase.de haben entsprechende Einträge bereits in Intels aktualisiertem Programmierleitfaden gefunden, wonach die BW- und DQ-Erweiterung für eine bessere Performance bei Integer- und Fließkomma-Berechnungen sorgen. Mit den VL-Instruktionen können AVX-512-Befehle auch in 256 oder 128 statt immer 512 Bit abgearbeitet werden.
Zwei weitere Erweiterungen werden Intels Prozessoren auf Basis von Cannonlake in Form von AVX512IFMA und AVX512VBMI erhalten. Darüber hinaus nennt der Clang-Compiler Unterstützung für SHA-Verschlüsselung und UMPI. Das Besondere: Nicht nur die Server-CPUs, sondern auch die Desktop-Ableger werden die Instruktionen voraussichtlich unterstützen. Zumindest bei Spielen wird man davon voraussichtlich aber nicht viel merken; traditionell werden neue Erweiterungen vorwiegend bei Anwendungen unterstützt.
Quelle: via phoronix.com
Da man mit den "breiten" AVX-512-Befehlen sehr viele gleichartige Fließkomma-Operationen auf einmal durchführen kann, ist das vorwiegend dort von Interesse, wo man es mit großen Aufgabenstellungen der linearen Algebra zu tun hat (z.B. Multiplizieren / Diagonalisieren riesiger Matrizen). Das ist hauptsächlich in wissenschaftlichen Berechnungen der Fall. Die typischen Berechnungen, die Spiele so auf der CPU machen, sind von völlig anderer Natur. Da hat man hier mal ein paar Multiplikationen, dann ein paar Auswertungen von "special functions" (sqrt/exp/log/sin/cos), gepaart mit sehr vielen Fallunterscheidungen und Sprunganweisungen. Da gibt es sehr selten Situationen, wo man einfach mal z.B. 100 Multiplikationen der Reihe nach durchführen will. Besser gesagt sind diese Situationen nicht der geschwindigkeitsbestimmende Schritt. Insofern bringen generell solche Befehlssatzwerweiterungen in die "Breite", mit denen man mehr gleichartige Operationen mit einmal ausführen kann, für Spiele nicht all zu viel. Da könnte man eher mit besserer Sprungvorhersage / längerer Pipeline / besseren Caches noch ein gewisses Plus rausholen
Codemasters Rennspiele verwenden AVX, davon ab kenne ich selber keine anderen.
Keine Ahnung, ob das in der Zukunft sich wesentlich ändern wird.
Wenn, dann wird sowieso nur AVX1 eingesetzt.
AVX2 und AVX512 sind in sehr weiter ferne was Spiele anbelangt.
Für einem Gamer ist es total egal.
AVX512 bekommt man sicher auch erst ab einem i3 oder i5, darunter werden sie es deaktivieren.
In wie weit ist avx denn für den "typischen" gamer von Interesse ?
Da sind viele ARM Chips größer.
Bei Skylake muß man das alles erst mal hinzu rechnen!