Názor k článku Konečně levná Mini-ITX deska pro Ryzeny 7000. Gigabyte chystá model s čipsetem A620 (update) od Jim_Keller - Já zase nemůžu z toho jak prosazuješ fixní...

  • 28. 6. 2023 9:07

    Jim_Keller

    Já zase nemůžu z toho jak prosazuješ fixní vektory z roku 1966 jako něco úžasnýho a nenahraditelnýho. Podle tvýho bysme místo křemíkových tranzistorů měli používat pořád relátka a elektronky, ne? Hlavně nic novýho a lepšího, fuj!

    Revoluční Flexibilní ARM / SVE vektory vs. Fixní x86 / SSE-AVX

    • 1) SVE podporuje 16 různých délek vektorů (od 128-bit - 2048-bit, krok 128-bit) x86 podporuje 128-bit SSE, 256-bit AVX2 a 512-bit AVX512 a pro všechny MUSÍ mít zvlášť instrukci, která rozlišuje délku vektoru, ikdyž se jedná o obyč ADD. Tedy s fixním přístupem by muselo mít x86 16 různých verzí instrukcí, pro každou délku zvlášť. Což by se ani nevešlo do enkodovacího prostoru a x86 by musela u těch nových instrukcí zvýšit délku enkodování (což RISC s 32-bit enkodovaním udělat nemůže). Proto ve Fujitsu a ARMu přišli s geniálním řešením pomocí flexibilních vektorů. SVE instrukce nezávislá na délce vektoru - geniální řešení na oddělení délky vektoru a nových instrukcí. Jedno enkodovaní pro všechny délky a tím naprosto odstranili fragmentaci (bordel) čímž trpí x86. Bez diskuze revoluční záležitost.
    • 2) Dopředná kompatibilita Běží x86 128-bit SSE na AVX512 jednotce 4x rychleji? Ne neběží. SVE tohle umí. Dnešní SW který běží na 128-bit SVE2 poběží na budoucím 2048-bit SVE6 nejméně 16x rychleji. Tohle x86 nemá a nikdy mít nebude dokud taky nepřejde na revoluční flexibilní vektory.Umí AVX512 menší šířky vektoru? Jistěže umí. Klidně tam můžeš nacpat jednu hodnotu a degradovat to na skalár FPU. Ale zahltíš CPU a sběrnice nulama a bude to žrát jak prokopnutý úplně zbytečně. Je to asi tak výhodné, jako rozvážku pizzy provádět 40 tunovým kamionem.
    • 3) Ten AMD Zen 4 je krásnej příklad jak problematické jsou zastaralé fixní AVX512. Komplikuje to vývoj HW tím rozkladem na 2x256-bit, tudíž kdyby x86 umělo revoluční flexibilní vektory, tak by tam hodily 2x 256-bit FlexAVX512 a ušetřili by hromadu času a tranzistorů na obcházení zastaralého fixního 512-bit AVX512.
    • 4) ARM šel ještě dál a místo 2x256-bit SVE u jádra V1 dává nyní 4x 128-bit SVE2. Proč? Protože s flexibilníma vektorama může. x86 nemůže mít 4x128-bit AVX512. Díky tomu ušetří hromadu komplikací a tranzistorů a přitom díky OoO to má stejný výkon tako 1x512-bit. A hlavně ve skaláru to má 2x větší IPC než 2x 256-bit u Zen 4.
    • 5) Sranda je že se vyhýbáš komentu ohledně backportu BF16 a NI instrukcí z AVX512 do AVX2 a tedy vytvoření nové verze AVX2 (AVX3?), kterou ovšem zase nepodporuje AMD. Pěknej bordel že? A jenom proto že Intel potřebovat tyto nové instrukce dostat na 256-bit SIMD v Gracemontu (kterej to ovšem vnitřně rozkládá na 128-bit). Asi matrix v matrixu aneb rozklad 512-bit na 2x256-bit a ty na 128-bit už se zdál příliš šílený i pro samotnej Intel. Kdyby x86 umělo flexibilní vektory tak nemají problém tam vrazit 256-bit FlexAVX512, které by bylo společné i pro velké jádra. Nulová fragmentace a nemuseli by vypínat AVX512 na velkých jádrech, tedy snižovat si výkon.
    Fixní vektory z roku 1966 patří do muzea a basta.

    28. 6. 2023, 09:08 editováno autorem komentáře