( ricsip | 2023. 03. 27., h – 17:11 )

Ahogy írod, ezeket az utasításokat nem kell ma már megtanulni, a fordító dolga, hogy ezek mentén optimalizáljon.

Nem feltétlenül. Ahol kell a teljesítmény (tipikusan nem az OS core binárisaiban, inkább az ilyen ycruncher meg Prime95 számolgatós projectek), ott muszáj jobban utánajárni. Illetve processzor generációnként is lesik h. melyik AVX utasítás-csoportot tudja jól / rosszul végrehajtani a processzor. Pl. kijött a Zen4, írják van benne AVX512, hurrá fasza az intel épp mostanában szedte ki a desktop kategóriás processzoraiból a teljes AVX512 supportot, erre az AMD meg grátisz odaadja a home usereknek is. Nem kell (tíz)milliókért Xeon Gold meg Platinumot venni. Csak már lehet tudni h. 2x256 módban megy az 1x512 helyett. Aztán mikor elkezdik micro-benchmarkolni, kiderül h. miben jobb-rosszabb konkrét utasításokat futtatva mint az intel hasonló tudású processzorai. És mivel az AVX512 is akkora méretes család, már számít h. milyen feladatra is akarod pontosan használni, és az ahhoz szükséges utasításokat az AMD jól megcsinálta, vagy  azok épp lassabbak mint intel-nél.

Ez már olyan jellegű könyékig az architekturában reverse-engineering meló, amihez az intel és az AMD se ad a kezedbe kényelmes dokumentációt. Magyarul van pár tucat ilyen őrült hekker az egész világon, akinek van annyira mély tudása, hogy ezeket ki tudja nyomozgatni. Aztán ha publikálja, a community is birtokában lesz a tudásnak. A fordító programok meg főleg nem csinálnak ezeknél by default jó munkát. Vagy ha igen, akkor is csak majd 4-5-x év múlva, mire a processzor annyira elterjedt lesz h. megéri azokra is optimalizálni.