Hirdetés

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

  • Abu85

    HÁZIGAZDA

    Olyan szinten félreértés van az órajelből, hogy az már durva. Szóval a GPU-knál az órajel nem igazán gyártástechnológiai tényező, sőt manapság már a CPU-knál sem az. A lényeg, hogy az órajelet ma már nem középen vezetik be a lapkákba. Egyszerűen ez már nem kifizetődő. Az órajelelosztó hálózatok szempontjából több alternatíva lehetséges, és az órajelfa a legelterjedtebb. Ennek a lényege, hogy az órajel-erősítők egymás után, a hálózat mentén helyezkednek el. A modern rendszerek ezt különböző szimmetriastruktúrával vegyítik, hogy az órajel a lapka közepéből kiindulva a lehető legjobb szinkront eredményezze. A GPU-k, különösen a nagy kiterjedésű lapkák (a mai gyártási eljárásokkal 250 mm2 fölött nagynak számít) az órajelfát kiegészítik hálós topológiával is, ami az órajelcsúszások minimalizálására szolgál. Az AMD a GPU-k esetében a GCN4 óta ráadásul az egész hálózatot LC oszcillátorként működteti, vagyis a tárolt elektromos energiát újrahasznosíthatóvá teszik. Emiatt ugrott a GCN3-GCN4 között az órajel, ugyanis a háló extra fogyasztását már nem kell elviselni.
    Az órajel meghatározásának másik, és egyben a legfontosabb tényezője pedig az architektúrába épített lépcsőzés. Már jó pár éve a GPU-k is szétszedik a futószalagokat, vagyis az egy nagy feladatot, több kisebb feladatra bontják. Ez lehetővé teszi, hogy az órajelet növeljék, mert a megbontással már nem kell az egy nagy feladathoz igazodni, hanem elég, ha egy kisebb feladatot elvégez a rendszer egy órajel alatt. A hardverben meghatározott fokozatok tekintetében a GCN-ben (1/2/3/4-ben) van a legkevesebb. Tehát az adott futószalagot ez bontja messze a legkevesebb részre, viszont így a lebontott részek is nagyobb munkát jelentenek, vagyis az órajel nem állítható annyira nagyra, mert különben nem férne bele az adott ciklusba a munka. A GCN5-ben már nüansznyival ugyan, de több futószalag fokozatot használ az AMD, így ugyanazt a futószalagot már a GCN1/2/3/4-nél több kisebb részre bontják. Ez nagyobb órajel beállítását teszi lehetővé, de egy órajel alatt nem is végez annyi munkával a GCN5, mint a GCN1/2/3/4. Ugyanígy az NV is ezzel dolgozik. A Fermi óta a vállalat drasztikusan emeli a futószalag fokozatok számát. A Pascalban nagyjából másfélszer annyi fokozat van, mint egy GCN4-ben, és ezért lehet magas órajelen járatni, viszont cserébe a Pascal nagyjából másfélszer annyi órajel alatt végez egy teljes futószalag feldolgozásával a GCN4-hez képest.
    Végeredményben a futószalag fokozatok száma pont olyan dolog, mint a CPU-knál. Nincs egy ultimate szám, amit érdemes használni, de persze általánosan ne legyen se kevés, se túl sok. Általában az architektúra működését figyelembe véve érdemes a fokozatokat kialakítani.
    A gyakorlati tapasztalat azt mutatja, hogy több fokozattal energiatakarékosabb lehet egy GPU, viszont az architektúra teljes skálázhatósága nem lesz olyan jó. És itt elsősorban arra kell gondolni, hogy a sok fokozat megfelelő kezelése sok tranzisztort visz el már a vezérlés szintjén, de ez arányaiban még megérheti, mert a tranzisztorok száma az új node-okkal már nem akkora probléma, mint régen. A kevésebb fokozat a GPU energiatakarékosságát rontja, ugyanakkor a teljes skálázhatóságot javítja, illetve a felszabaduló tranzisztorokat hasznosabban is el lehet költeni, például több ALU-ra, regiszterre.

    Mindezek mellett, specifikusan tárgyalva a nagyobb GPU-knál (és itt megint a nagyobb alatt ismét 250 mm2 pluszt értünk) manapság arányaiban az egyik legnagyobb fogyasztó a belső buszrendszer. Erre ugye szükség van, hiszen a hardverbe tervezett fizikai blokkokat össze kell kötni valahogy. Az AMD-nél ez a belső buszrendszer nem lehet olyan egyszerű, szimplán keresztkötéses, mint az NV-nél, mert van egy GDS a rendszerben, tehát minimum egy gyűrűs buszt kell használni, ami a keresztkötéses modellnél még nagyobb fogyasztó, nem is kevéssel. A Vega itt sokat nyer, mert már nem gyűrűs buszt használ, hanem egy NoC-ot, vagyis egy lapkán belüli hálózatot. Ez teljesítményben ott van, mint a régi gyűrűs busz, de sokkal kevesebbet fogyaszt, bár még így is többet, mint a nagyon régi keresztkötéses modell.
    Az NV-nél ezek a problémák még nem ütötték fel a fejüket, mert ordered atomics-ra sosem tervezték a hardvert, ugye nem voltak megrendelések a konzolhoz. Tehát nekik olyan problémákra nem kellett reagálniuk, hogy maguk a warpok a dispatch sorrendjében fussanak le. Nyilván azzal, hogy jön a wave intrinsics a shader model 6-ba, ez már az NV-nek is egy problémává válik, mivel szükségük lesz egy normális belső buszra, ha normális sebességgel akarják futtatni a global ordered append csoport függvényeit. A jelenlegi hardverek ezt úgy tudják megoldani, hogy ki kell írni a részeredményeket a chipen kívülre, a VRAM-ban, ami rengeteg memória-hozzáférés miatt úgy több milliószor lassabb, mintha chipen belül lenne tárolva az egész egy globális adatmegosztásra fenntartott memóriában, ami be van kötve a belső buszra.

    [ Szerkesztve ]

    Senki sem dől be a hivatalos szóvivőnek, de mindenki hisz egy meg nem nevezett forrásnak.

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