Názor k článku Nová generace CPU ARM: Cortex-X4 je doteď vůbec nejširší procesorové jádro s 8 ALU od Jan Olšan - Ono je možné, že u toho ARMu je...

  • 5. 6. 2023 19:44

    Jan Olšan

    Ono je možné, že u toho ARMu je ta krátká pipeline částečně znouzectnost (nebo teda přesnější by asi bylo říct "prostředek, jak si zjednodušit práci"), umožňuje jim dosáhnout vysokého IPC snáz/levněji, než by se dalo s delší pipeline. Podobně jako třeba u jejich L2 cache s netypicky extrémně nízkou latencí to asi rychle vede k vysokému IPC, ale budou tam ty negativní efekty na maximální frekvenci.
    ARMu to asi nevadí, protože kvůli tomu, kam ta jádra cílí, se ty frekvence jen lehce nad 3 GHz snesou a může to být možná i optimální při těch tlacích na nízkou spotřebu jádra a co nejmenší plochu.

    Nemůžu se ale zbavit dojmu, že mít tu pipeline o něco delší pro možnost dosáhnout vyšších frekevencí a zároveň toho vyššího IPC je ambicióznější, náročnější (ale taky potenciálně výnosnější) cesta. Nejsem si úplně jistý, ale myslím, že Apple má těch stupňů víc, asi kvůli tomuhle.

    "Intel a AMD mají ale o několik řádů složitější architekturu kvůli CISC instrukcím a stejně dokáží konkurovat efektivitou, ani nemluvě o výkonu."
    "Z podstaty věci by tedy RISC (ARM) měly být schopné při správné architektuře dosahovat vyšších frekvencí, než CISC (x86)."

    Ono ten rozdíl je vpodstatě měnit do té fázi dekódování, dál už ne (plus to, že kvůli náročnosti dekódování se používá micro-op cache), pak už to ve stádiu micro-opů funguje stejně jako ty ARMy. Oboje dekóduje relativně komplexní instrukční sadu se stovkami instrukcí (které u ARMu nejsou úplně v duchu původního konceptu RISC) na jiné interní "jakoRISC" operace. Říká se že rozdělení na CISC a RISC už dneska nemá smysl (kromě microcontrollerů), všechno je postRISC. U toho x86 versus ARM dneska fakticky záleží na jiné věci, a to že jedno je ISA s variabilní délkou instrukcí, což je zdroj většiny komplikací, zatímco ARM má fixní délku instrukcí, což hodně usnadňuje paralelní dekódování, protože CPU ví automaticky, kde začínají instrukce.

    Respektive teda, kde má x86 "složitější instrukce" i dál v pipeline je AVX-512, z hlediska té šířky vektoru. To by u ARMu mohlo být taky, ale zatím většinou zůstávají u 128bitového zpracování i u SVE/SVE2.

    "každopádně to vypadá spíš jako že udělali gigantický bastl a výkonu dosáhli masivním paralelizmem uOP uvnitř procesoru."
    Tak to je jedna z nejpokročilejších možných cest, jak toho dosáhnout. A energetická efektivita je u toho přístupu patrně lepší než u frekvencí (ty mají výhodu asi v menší zabrané ploše/výrobní ceně).

    5. 6. 2023, 19:46 editováno autorem komentáře