Vývojáři FFmpeg implementovali AVX-512, přináší až 60% zrychlení proti AVX2
Současné high-level programovací jazyky a pokročilé kompilátory umožňují zrychlení a zjednodušení vzniku softwaru, na druhé straně mohou produkovat ne zcela efektivní kód, který nedokáže z hardwaru vytěžit jeho úplný výkonnostní potenciál. Alternativou může být cesta ručních optimalizací a assembleru, ovšem ta má daleko vyšší časové a perzonální nároky. Aby v ní navíc autor viděl smysl, musí mít skutečně hmatatelný přínos.
V případě podpory AVX-512 je tento smysl definovaný mimo jiné hardwarovou základnou, která tuto instrukční sadu podporuje. Přestože Intel ohlásil podporu AVX-512 již v roce 2013 a kompatibilní hardware byl dostupný 2016, zůstala podpora velmi dlouho roztříštěná co do segmentů trhu i konkrétních variant instrukční sady na různém hardwaru, takže motivace autorů softwaru k využití AVX-512 nebyla velká.
AMD se s architekturou Zen 4 podařilo zajistit podporu AVX-512 ve všech segmentech, do kterých se tato architektura dostala (tzn. mobilního, desktopového, pracovních stanic, serverů, superpočítačů, handheld…). Další generace v podobě Zen 5 nejen že podporu v tomto rozsahu zachovala, ale přinesla podporu zpracování AVX-512 v plné rychlosti a to i na menších úsporných jádrech Zen 5c.
Výkon s použitím různých instrukčních sad (FFmpeg)
Tato strategie, zdá se, funguje a softwaru podporujícího AVX-512 (i mimo segment serverů a superpočítačů) přibývá. FFmpeg demonstroval, že kvalitní podpora AVX-512 může oproti základnímu kódu v C přinést 4-94násobné zrychlení (v průměru 52×), oproti SSE3 až 2,35× (v průměru 2,08×) a oproti AVX2 až 60 % zrychlení (v průměru o 28 %).
V případě procesorů AMD podporují AVX-512 všechny produkty využívající architektur Zen 4 a Zen 5. V případě Intelu je AVX-512 na PC procesorech podporováno na mobilních procesorech Cannon Lake (tj. dvoujádrové Core i3-8121U), Ice Lake (Core 1000) a Tiger Lake (Core 1100) a desktopovém Rocket Lake (Core 11000). Alder Lake (Core 12000), Raptor Lake-(refresh) (Core 13000/14000), Arrow Lake (Core Ultra 200H/K) a Lunar Lake (Core Ultra 200V) tuto instrukční sadu oficiálně nepodporují, byť po hardwarové stránce jsou velká jádra potřebnými tranzistory vybavena.