Diit.cz - Novinky a informace o hardware, software a internetu

Vývojáři FFmpeg implementovali AVX-512, přináší až 60% zrychlení proti AVX2

Zdroj: Intel

Autoři otevřeného projektu FFmpeg prostřednictvím ruční práce v assembleru implementovali podporu pro moderní instrukční sady včetně AVX-512. Demonstrovali až 94násobné zrychlení oproti základu…

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.

Tagy: 
Zdroje: 

Diskuse ke článku Vývojáři FFmpeg implementovali AVX-512, přináší až 60% zrychlení proti AVX2

Středa, 6 Listopad 2024 - 09:57 | Butrus Butrus | 60% zrychlení = 1,6x Nauč se základní matematiku...
Středa, 6 Listopad 2024 - 09:20 | Kecal | "... (nebo alespoň proti SSE3, které je...
Středa, 6 Listopad 2024 - 08:38 | mp07 | Já to v super premiu vidím oproti AVX2 dokonce i...
Středa, 6 Listopad 2024 - 08:36 | Arctia | Spis pres VAP. Bosch. :-)
Středa, 6 Listopad 2024 - 08:25 | Melda | Třeba to čte přes WAP a obrázky mu to nezobrazuje...
Středa, 6 Listopad 2024 - 08:22 | Tom Buri | a jeje.. to je zase mrzeni.. ja v premiu vidim...
Středa, 6 Listopad 2024 - 08:13 | melkor | Není nad to v různých prohlášeních používat...

Zobrazit diskusi