Hirdetés

Új hozzászólás Aktív témák

  • Petykemano

    veterán

    válasz S_x96x_S #4415 üzenetére

    > https://erik-engheim.medium.com/why-is-apples-m1-chip-so-fast-3262b158cba2

    A cikk első részével nem teljesen értek egyet. Mármint azzal persze igen, hogy a hardveres gyorsítók számítanak. Azzal nem, hogy a Dell-nek vagy a HP-nek abban bármiféle szerepe tudna lenni, hogy milyen hardveres gyorsítók épülnek be a termékeikbe. Jó, hozzáteszem, ez úgy igaz, hogy nem tudom, ezek a cégek mekkora tényleges befolyással tudnak lenni a szoftveres környezetre. Merthogy a hardveres gyorsítók kihasználhatósága sokkal inkább ezen múlik, mint azon, hogy a gép összerakója mit álmodik meg. Ha a Dell vagy a HP megálmodik valamilyen hardveres gyorsítót, akkor nem elegendő ARM IP-ből összedobálnia, megterveznie, VAGY megrendelni az AMD-től vagy inteltől. Vagy saját magának kell a szükséges szoftvert is hozzátenni, vagy megkörnyékezni az MS-ot, Google-t, hogy nézzétek, milyen jó lenne, ha.

    Az idézetedhez pedig hozzátenném:

    - Az ILP növelésében segít az Out of Order execution.
    - Minél nagyobb a ROB (Re-order buffer), annál nagyobb a soron kívül, párhuzamosan végrehajtható utasítások száma
    - A ROB-ot a decoder eteti "micro-op" utasításokkal.
    Így összességében az M1-ben a lényegesen 3x nagyobb ROB-ot egy 2x akkora teljesítményű decoder eteti.

    És a magyarázatban ez a lényeg:
    "This is where we finally see the revenge of RISC, and where the fact that the M1 Firestorm core has an ARM RISC architecture begins to matter.
    You see, for x86 an instruction can be anywhere from 1–15 bytes long. On a RISC chip instructions are fixed size. Why is that relevant in this case?
    Because splitting up a stream of bytes into instructions to feed into 8 different decoders in parallel becomes trivial if every instruction has the same length.
    However on an x86 CPU the decoders have no clue where the next instruction starts. It has to actually analyze each instruction in order to see how long it is.

    Namost két dolgot nem értek.
    Úgy tudom, hogy a az x86 processzorokban belsőleg már valóban nem CISC hanem RISC architektúrák, van egy belső fordító. A legújabb atom magban épp az pláne, hogy valódi CISC x86 végrehajtást csinál és így tud energiahatékony lenni alacsony teljesítmény mellett.
    A másik dolog: nem tudom, hogy vajon micro-op cache nem pont ezért van-e?

    És miért ne lehetne valamikortól olyan x86 processzort csinálni, aminek van fix utasítás hossza. Nyilván egy úgy forgatott program nem futna régi processzorokon. De ez kb egy olyan átállást jelente, mint a 32bit vs 64bit. Egy új processzor nyilván tudna visszafelé kompatibilis lenni.
    De vajon az Apple-nél nem kell minden programot újraforgatni? Vagy ha A MS úgy dönt, hogy akkor Arm, akkor nem kell mindent újraforgani?

    De azzal persze egyet kell értsek, hogy az Apple-nek beépíteni 8-16 magot valószínűleg könnyebb, mint az AMD-nek és az intelnek levezényelni az x86-ban egy ilyen változást.

    Ugyanakkor ha ez ennyire triviális, hogyhogy csak az apple-nek jutott eszébe?

    Egy választ a másik linked tartalmaz (ez nem az x86 utasítás hossz limitációval magyarázza)
    "The answer of wide decode and deep reorder buffer gets much closer than the “tricks” mentioned in tweets. That still doesn’t explain how Apple built an 8-wide CPU with such deep OOO that operates on 10-15 watts.
    The limit that keeps you from arbitrarily scaling up these numbers isn’t transistor count. It’s delay—how long it takes for complex circuits to settle, which drives the top clock speed. And it’s also power usage."

    Ahogy írtad is, az intel már most 5 decodernél jár 10nm-en.
    A kommentben a hangsúly a késleltetésen, a tranzisztorok gyorsaságán van. Az 5nm ugye eleve sűrűbb és az Apple mindig is a legsűrűbb libraryt használta. Vajon elképzelhető-e, hogy a 8 decoder beépíte azért lehetséges, mert a sűrű 5nm-en elképesztően rövidek a késleltetések, kicsi a delay.
    Ha ez igaz, akkor elképzelhető, hogy az intel és az AMD is képes lesz 5nm illetve 7nm-en előrelépni 5 vagy akár 6 decoder irányába.

    Az urak is jól elvitatkoztak azon, hogy az M1-gyel az Apple az elmúlt 10-20 év ILP növelhetőségének tudományos kutatását tette zárójelbe.

    Találgatunk, aztán majd úgyis kiderül..

Új hozzászólás Aktív témák