2024. március 28., csütörtök

Gyorskeresés

Spekuláció a Radeon RX Vega teljesítményéről

Írta: | Kulcsszavak: Vega . Fiji . Radeon

[ ÚJ BEJEGYZÉS ]

Ahogy 2015-ben a Fury X-et, az AMD 2017-es high-end videokártyáját is igencsak nagy várakozás előzi meg. A Radeon RX Vega névre keresztelt VGA számos vélt határidő elmulasztása után várhatóan 2017. július végén kerül bejelentésre, viszont a lényegét adó GPU már korábban bemutatkozott a Radeon Vega Frontier Edition-ben, ami az nVidia Titan sorozatához hasonlóan egyfajta félprofesszionális kártya. A Vega FE kapcsán már napvilágot láttak játékos tesztek, azonban ezek a gyártó állítása szerint nem reprezentatívak, mert a driveres támogatás az RX változat megjelenésére lesz megfelelően kiforrott. Mivel a Vega FE megjelenésével a GPU főbb műszaki tulajdonságai ismertté váltak, alkalom nyílik egy jó kis spekulációra az RX várható játékos teljesítményéről. A következőkben megvizsgálom, hogy mire számíthatunk az ismert műszaki paraméterek, valamint a bejelentett architektúrális / funkcionális újítások alapján.

Ami mérhető - nyers erő, Polaris vs Fiji

Kezdjük azokkal a tényezőkkel, amelyeknek a teljesítménybeli hatása ismert. Vicces módon funkcionális egységek tekintetében a Vega GPU szinte megegyezik a Fijivel: a központi ütemezőre 4 Shader Engine csatlakozik, amelyek darabja egy setup motort, tesszelátort és raszterizálót tartalmaz, valamint 16 Compute Unitot. Egy CU-ban 64 ALU és 4 textúrázó található, így a teljes chip 4 háromszöget dolgoz fel órajelciklusonként, 64 pixelt tud raszterizálni, és rendelkezik 4096 ALU-val, valamint 256 textúrázóval. A hátsó traktusokban 4 render backend kapott helyett, egyenként 16, azaz összesen 64 ROP-pal, viszont a memória-elrendezésben különbség van a Fijihez képest - a 4db 1024-bites HBM stack helyett a Vega-ban 2db 1024-bites HBM2 "kocka" található.

Core órajel terén jelentős az előrelépés: míg a Fury X 1050MHz-en ketyegett, a Vega maximális órajele 1600MHz, az AMD által megadott tipikus órajel pedig 1400MHz. Ez elég nagy különbség - a spekuláció céljaira a PC Perspective tesztjében látott 1440MHz-es átlagot fogom használni.
A memória órajele a HBM2 lényegesen jobb lehetőségeiből adódóan sokkal magasabb, mint a Fury X esetében - a modulok 945MHz-en ketyegnek, ezáltal csaknem kompenzálva a felezett busz-szélességet.

A magasabb core órajelekből és az azonos egységszámokból adódóan a Vega funkcionális átbocsátó-képessége 37%-kal magasabb, mint a Fury X-é, míg a memória-sávszélessége 6%-kal alacsonyabb. Miután a Fury X esetében a memória problémája elsősorban az alacsony órajel (-> magas késleltetés) volt, én arra tippelek, hogy a közel 500GB/sec memóriasávszélesség nem fogja jelentősen visszatartani a Vega chipet, így a sebessége jellemzően 30-35%-kal lehet gyorsabb az elődjénél, nem számolva az architektúrás különbségeket.

Az architektúra változásainak tekintetében két lépcsőnk van: az első a Fiji -> Polaris ugrás, a második pedig a Polaris -> Vega. Az elsőt ismerjük - a Computerbase.de tesztje szerint átlagosan 7%-ot hozott a Polaris a Tongához képest (ami a Fijivel megegyező GCN verzió). A második lépcsőt a következő szakaszban taglalom.

A mérhető faktorok vizsgálatával tehát arra jutottunk, hogy a Vega magasabb órajele a gyengébb memóriával kombinálva 30-35% előrelépést hozhat, az architektúra javulásának első fele pedig 7%-ot. Ez eddig összesen 40-42% előny a Fury X-hez képest, ami azért nagyon érdekes szám, mert szinte pontosan a GTX 1080 teljesítménye. Fogalmazhatunk úgy is, hogy ha a Vega a Polaris architektúrán érkezne, akkor a sebessége átlagosan megegyezne az 1080-éval. Más szemszögből nézve - az RX Vega annyival lesz gyorsabb a GTX 1080-nál, amennyi extra teljesítményt tudnak hozni az architektúrás újítások a Polarishoz képest.

A Vega sematikus képe - GPU + memóriák (forrás: Guru3D.com)

Ami becsülhető - a Vega újításai

Az elemzés második részében megvizsgálom a Vega legjelentősebb újításait a teljesség igénye nélkül, és megpróbálom megbecsülni, milyen hatással lesznek a játékos teljesítményre. Előrebocsátanám, hogy a grafikus teljesítmény folyamatos növekedéséért elsősorban a nyers erő a felelős, az elmúlt 10 évből nem tudnék olyan architektúra-váltást mondani, ahol azonos funkcionális kapacitások és azonos órajelek mellett 10%-nál komolyabb előrelépést hozott maga az architektúra (legalábbis induláskor). De hátha a Vega lesz az első :)

Packed math: a 32-bites ALU-k a Vega-ban képes lesznek egy órajel-ciklus alatt 2db 16-bites operandussal rendelkező műveletet végrehajtani, azaz 16-bites operandusok használata esetén a számítási teljesítmény duplázódik. A feature számos compute funkcióban kiváló, viszont grafikai célokra igen limitáltan használható - a számítási teljesítmény legnagyobb részét lefoglaló pixel shaderekben szinte használhatatlan, mert képminőségbeli romlást okoz. Egyéb shader-típusokban (elsősorban compute) mérlegelhető a használata, de óvatosan kell vele bánni - ha látható minőségromlással jár, akkor könnyen lesz belőle hátrány. Célzott programozást igényel, ezért jó darabig nem várható belőle számottevő előny, esetleg egy-két izolált esetben.

Variable width SIMD: a Vega két igazán izgalmas újítása közül az egyik - ráadásul tovább fokozza az izgalmakat, hogy nem találtam bizonyítékot arra, hogy a feature valóban aktív lesz-e a Vega-ban :) Tegyük fel, hogy igen.
Egy kicsit vissza a CU-khoz és az ALU-khoz: a CU 64 ALU-ja 4db SIMD tömbre van osztva, SIMD-enként 16 ALU-val. A 16 ALU ugyanazt a műveletet hajtja végre egy adatcsoporton - ez értelemszerűen akkor hatékony, ha sok adaton (pl. sok pixelen) kell ugyanazt a shadert futtatni, mert ilyenkor kevés a kihasználatlan ALU. Ha az adatcsomagok kicsik (jelentősen kisebbek 16-nál), akkor számos ALU üresben fog pörögni - az áramot eszi, de érdemi munkát nem végez. A változó szélességű SIMD tömb ezt a problémát orvosolja - a workloadhoz igazítja a SIMD tömbök méretét. Ha sok az "üres" ALU, akkor legjobb esetben azokat befogja más munkára, kevésbé jó esetben pedig inaktiválja, ezáltal azonos sebesség mellett javítva a fogyasztást.
Ezt a képességet már a Polarisban is vártam, és kitűnőnek tartom - azonban jelentős teljesítménybeli javulást mégsem várok tőle a Vega esetében. Ennek oka, hogy a Fijihez hasonlóan a Vega is erősen ALU-túlsúlyos, és elsősorban a gyengébb backend lesz a szűk keresztmetszet - ha az ALU-k kihasználtsága javul is, az a teljes teljesítményre jelentős hatással aligha lesz. A fogyasztást viszont komolyan javíthatja - ezt kíváncsian várom.

Draw stream binning rasterizer: az igen hangzatos nevű feature lényegét tekintve nem más, mint egy (két) lépésnyi elmozdulás a tile-based renderelés irányába. Parasztosan fogalmazva, a Vega megpróbálja a kép egy adott (nem túl nagy) szegmensére összeszedni az összes raszterizációs (majd utána pixel shading) feladatot, és ezeket együtt végrehajtani. Ez két helyen hoz megtakarítást:
- Takarásban lévő pixeleket könnyebb azonosítani, ezekre nem kell elvégezni a vonatkozó műveleteket
- A tile adatai jó eséllyel elférnek az L2 cache-ben, ezzel könnyítve a memóriabusz terheit

Elméleti síkon ez jelentős előrelépést hoz mind a raszteres teljesítményben, mind a fogyasztásban - a gyakorlat azonban nem feltétlen fogja ugyanezt mutatni. Az nVidia igen hasonló dolgot csinál a Maxwellben, és bár az lehet, hogy az architektúra kitűnő fogyasztása sokban ennek köszönhető, a raszteres teljesítmény komoly növekedésében nem hiszek - ha ez így lenne, akkor nyilván nem akkor döntött volna az nVidia a ROP-ok és a raszterizáló-kapacitás megduplázása mellett. Ellenben az megintcsak könnyen lehet, hogy a sávszélesség relatív fogyásának a kompenzációját ez a feature nagyban elősegíti.
Mit jelent mindez a Vega esetében? A fogyasztás csökkenését itt is minden bizonnyal lehet realizálni, viszont miután a Vega ROP : memória aránya pont az ellenkező véglet, mint a Maxwell és a Pascal, azt nehezen tudom elképzelni, hogy drámaian megdobná a sebességet - hiszen a Maxwellnél sem tette.

High bandwidth cache: ezt intézzük el gyorsan, mert a HBC játékos szempontból csak egy marketing buzzword. Az AMD mostantól a VRAM-ot egyfajta cache-ként tekinti, amibe tetszőleges forrásból töltögetheti a rettentő mennyiségű adatot, és a szoftver fejlesztőjének (elvileg) nem kell foglalkoznia azzal, hogy mekkora a fizikai VRAM. A koncepció jó és előremutató, de a játékok terén a kvázi-realtime igények nagyon nehéz jól implementálni, és teljesítményelőnyt csak akkor hoz, ha a játékok sokkal több adattal akarnak bűvészkedni, mint a fizikai VRAM. Itt még a 8GB-os kártyákkal nem tartunk, szóval a HBC hozama pont 0% lesz az RX indulásakor.

Primitve shader: utolsónak hagytam a legizgalmasabbat, aminek akár forradalmi hatása is lehet - ha, amennyiben, feltéve hogy :) Egy modern játékmotor tipikus jelenete több tízmillió háromszöget tartalmaz, és ez a rettenet mennyiségű geometria még egy 4K-s kép esetén is csak 8 millió pixelre fordul le. Nyilvánvaló már csak statisztikai alapon is, hogy nagy mennyiségű olyan háromszög van minden egyes képkockában, amelyeknek nulla (nem kevés, hanem pontosan nulla) hatása van a végső képre. Ha ezeket a háromszögeket mind ki lehetne szűrni, akkor minden bizonnyal a kutya sem venné a high-end VGA-kat sokkal jobb FPS-értékeket lehetne elérni minden hardveren. Nyilván ez a szűrés nem túl egyszerű (hiszen akkor már régóta működésben lenne), azonban úgy tűnik, a primitive shaderrel az AMD arra ad eszközt a fejlesztők kezébe, hogy relatíve egyszerűen megszabaduljanak a felesleges háromszögeknek legalább egy részétől.
Tekintettel arra, hogy a funkció direkt támogatást igényel, azonnali világmegváltást nem lehet várni tőle - azonban a driveren belül megoldható shader-csereberével az AMD is felturbózhat néhány címet. Mivel a primitive shader segítségével felesleges háromszögeket már a renderelési folyamat legelején ki lehet hajítani, a velük kapcsolatos összes további munka megtakarítható, azaz ha mondjuk 50M háromszögnek a felét kidobjuk, akkor a framerate közel duplájára nő (feltéve, hogy bírja a dispatch). Persze itt nagyon kell vigyázni - ha az algoritmus túl aggresszív, akkor olyan háromszögeket is kidob, amelyeknek van hatása a képre (és romlik a minőség), ha pedig túl szelíd, akkor nem fog kidobni szinte semmit. Ha én lennék az AMD, akkor 2-3 cím fejlesztőit jól megfizetném, hogy az RX Vega launch-ra szállítsanak egy patchet primitive shaderrel. Gyanítom, hogy pl. egy Deus Ex: MD-ben könnyedén lehet 30-40% FPS-t nyerni, ha pár okos ember ráfekszik egy hónap erejéig.
A primitive shadertől sem várom, hogy az indulás napján minden játékot forradalmasít, viszont lehetőséget ad arra, hogy néhány esetben igazán nagyot villantson a Vega. Roppant kíváncsian várom.

... és ha lassul? Eddig azt elemeztem, hogy milyen gyorsulási lehetőségek vannak a Vega-ban, de legyünk prudensek, és nézzük meg annak a lehetőségét, hogy a Vega mint architektúra nem gyorsul a Polarishoz képest, hanem lassul. Ez ugyan nem jellemző, de volt már rá példa - a Fermi generáció az nVidiánál azonos unitszám és azonos órajel mellett nem teljesített annyit, mint a megelőző Tesla. Abban az esetben volt egy jól körülhatárolható oka ennek - a 4 GPC kialakítása a korábbi, jelentősen monolitikusabb struktúra helyett. A Vega esetében ilyen tényezőt nem látok. Az órajel-potenciál növeléséhez ugyan van szükség komoly átalakításokra, azonban ezek nagyobb része a chip fizikai felépítésébe szól bele, ami pedig a logikai szerkezetet befolyásolja (pl. hosszabb pipeline-ok), azok egy ilyen erősen párhuzamos rendszer esetében aligha bírnak jelentős hatással. Szóval röviden: nem félek attól, hogy a Vega az architektúrája miatt veszít értékes %-okat a teljesítményéből.

Íme a Deus Ex: Mankind Divided egy jelenete háromszögekben - ki mennyit tud megszámolni?

Konklúzió - akkor mit is várhatunk a Vegától?

Sajátos módon a konklúzió is kétlépcsős lesz: először összegzem, hogy mit várhatunk az RX Vega kártyától primitive shader nélkül, majd ebbe a képbe kombinálom bele a meglehetősen bizonytalan kimenetelű wunderfeature-t.

Elnézve a PS-en kívüli újításokat, az AMD több olyan területen is hozott fejlesztéseket, amelyek a játékos teljesítményre jól látható hatással vannak. Ezek közül kettő, a DSBR és a variable width SIMD akkor tudna ütni, ha az ALU-kapacitás lenne a GPU szűk keresztmetszete - ezért azt saccolom, hogy az újítások megintcsak nem fognak forradalmat csinálni, és összességében a jelentősebb változásokkor megszokott 5-10%-os javulást hozzák a Polarishoz képest.
Összekombinálva a nyers erőt és a két ugrást (Fijihez -> Polaris -> Vega), a Fury X-hez képest 50-55%-os előrelépésre számítok, ami a GTX 1080-nál kb. 10%-kal jobb teljesítmény. Ez meglehetősen messze van az 1080Ti-től, és igencsak rosszul néz ki teljesítmény / fogyasztás téren is, különösen, ha belekalkuláljuk, hogy a HBM2-nek köszönhetően a memória jóval kevesebbet tesz hozzá a W-okhoz, mint az 1080 GDDR5X-e. A PCPernél látott fogyasztási adatokat és a GTX 1080 + 10% teljesítményt összevetve, a GPU teljesítmény / fogyasztása gyengébb a Polarisnál is - ha feltételezzük, hogy a DSBR és a VWS ebben komoly javulást hoz, akkor talán annyit tudunk mondani, hogy az olló nem nyílik tovább a konkurenciához képest. Ez semmiképpen nem jó hír, az AMD technológiai lemaradása továbbra is jelentős.

Mennyiben változtat ezen a képen a primitive shader? A technológiai lemaradás szempontjából semennyire, mert ebből a szempontból "csal" a Vega - nem ugyanazt a munkát végzi el hatékonyabban a chip, hanem ugyanazt az eredményt éri el kevesebb munkával. Ez természetesen felhasználói szempontból mindegy, de nem árt tisztában lenni vele.
Teljesítmény szempontjából sajnos nem lehet okosan jósolni. Az összes többi feature latolgatása korábbi tapasztalatokra, ökölszabályokra épül, viszont a primitive shader által nyújtott megtakarítási lehetőség teljesen új, és őszintén szólva fogalmam sincs, mekkora eredményt tud elérni az AMD driverből megoldott shader-cserékkel (és közben nem szúrják-e tökön magukat a nagy igyekezetben, ld. minőségromlás), és mennyit lesznek ebbe hajlandóak beletenni a fejlesztők. Ami biztos - indulásra nem lesz nagy tömegű játék primitive shaderekkel felszerelve, de én nagyon csalódott leszek, ha legalább 1-2 címben nem villantják meg a potenciált.

Összességében tehát egy GTX 1080 + 10%-os átlagsebességet várnék az RX Vega-tól, amit néhány ügyesen behozott primitive shaderes címmel felmehet átlagosan 15%-ra. Ez a tudás megfelelő árazással akár sikeres is lehet - különösen, ha a feature-ökkel kapcsolatos szép ígéretekre néhány ütős példa is születik, lehetőleg már a launch napján.

gbors

Hozzászólások

(#1) füles_


füles_
őstag

Kíváncsi vagyok mi fog kisülni ebből. Nagyon nem mutatna jól, ha egy 54%-kal nagyobb GPU csak 10%-kal lenne erősebb.
Ez így még rosszabb lenne, mint a Fiji és a GM200 esete, ahol ugyanakkora volt a két GPU, de a Fiji 20%-kal lassabb volt. (megjelenéskor a referencia 980Ti-től volt 20%-kal lassabb, ma már egy erősen OC-zott custom variánstól lehet ennyivel lassabb, vagy még ennél is kisebb lehet a különbség)

Én arra számítok, hogy azért kicsit jobban elhúz a 1080-tól, de a 1080Ti-t nem hozza be. Majd meglátjuk. :K

Am jó írás, köszönjük. :R

[ Szerkesztve ]

(#2) lezso6


lezso6
HÁZIGAZDA
LOGOUT blog

Hát, én már annak örülnék, hogy ha az 1080-nál gyorsabb lenne. Ez sok késés egyszerűen szánalom. Állítólag rég kész, csak drivert köszörülnek. Hát nem tudom. Örülnék ha így lenne, de inkább nem reménykedem.

A RIOS rendkívül felhasználóbarát, csak megválogatja a barátait.

(#3) joey04


joey04
titán

te jó ég miért nem te írod itt a teszteket. élmény minden cikked.

"Ha nem vennél a kezedbe gyorsabb telefont, akkor soha nem mondanád meg, hogy mennyivel gyorsabb telefonok vannak jelenleg a piacon."

(#4) nyakdam válasza lezso6 (#2) üzenetére


nyakdam
aktív tag

A látott tesztek után én is csak reménykedem, hogy valamit nagyon tudnak még köszörülni rajta, mert ha nem jobb mint az 1080, inkább ki se adják. Maradjon csak a professzionális piacra. Ennyire későn és 1080 teljesítménnyel nem sok esélye van a piacon.

(#6) Asbee válasza #32839680 (#5) üzenetére


Asbee
veterán

Nem is kell a Voltának még érkeznie. Ha hiszünk Abu-nak ott is az újításokra fognak menni és jelenleg nem dobbantana túl nagyot. Ebből már le lehet vonni a következtetést a Vega sem fog... Bízzunk benne, hogy egy fél év múlva a játék fejlesztések is megindulnak ebbe az irányba és a Vega-ból is kezd majd előjönni a valódi ereje. Csak az NV megint 100x jobban időzít pozícionál és a jelenre figyel jobban. Bár meg is tehetik mert van ott termékük ahol a konkirenciának még pár hétig de jó ideje nincs. Kicsit felületes ez a spekuláció, de egyre inkább ez a kép kezd összeállni.

(#7) #00137984


#00137984
törölt tag

Néhány észrevételem és ehez kapcsolódó kérdésem van. AMD nem tudja erőből kihozni a GCN architektúra tudását, mert a fogyasztás mindig magas és egyre magasabb... miközben több helyen temérdek tranzisztorokat szán a teljesitményszint kiegyenlitését kiváltó okosságokra. HBCC: a videómemória területének jobb kihasználása miatt került a VEGA-ra, de "csak abban az esetben fog teljesítményjavulást hozni, ha tényleg elfogy a VRAM az adott játékban". Gyengébbre sikerülnek a GPU-k mint ami elvárható a felépités szerint, de közben egy sor újitás foglkozik a jobb teljesitménykihasználásról. Ez a "ROP már nem az a ROP", amelyik az előző szériákban volt, mert továbbfejlesztés után 1.5x gyorsabb. Miközben az új videókártya alig gyorsabb mint az előző GCN szériák voltak. Ez volt 2017-ig az AMD videókártyák igéretes tudása. Most a VEGA tényleg léphet egyet legalább a GTX 1080 befogására tett kisérletre, ami a Polaris RX 400/500-ak után fejlődésnek mondható. Nvidia miközben mindig képes volt elég nagy fejlődést hozni a GTX 780ti óta eltelt időben (Kepler-Fermi-Maxwell-Pascal). GTX 970 és 1070 teljesitmény kiúgrás elég meglepő volt eleinte nekem, amikor a változtatások nem voltak forradalmi szinten hangoztatva. Mégis, hogy megindultak a grafikonok a játékokban, miközben az AMD az R9 200 és R9 300 szériával alig mozdult előre. Most AMD VEGA videókártyákkal szemben is magasabb elvárások vannak. Hajrá!..., mert érkezik majd egy poor Volta. :)

[ Szerkesztve ]

(#8) gbors válasza joey04 (#3) üzenetére


gbors
nagyúr

Thanks :)

(#7) Zsébernardo: a Pascal elsősorban a masszív órajel-emeléssel dobott nagyot. A Maxwellben sok okosság volt, amiket nem vertek nagydobra, de azok sem elsősorban a nyers teljesítményre mentek - a fogyasztás javítása mellett a szűk keresztmetszeteket gyalulták.

[ Szerkesztve ]

Spoken like a true emperor / Spoken like a true conqueror / Spoken like a true... terrorist

(#9) nemlehet válasza #00137984 (#7) üzenetére


nemlehet
őstag

A 1070 és a 970 nem egy kategória tudtommal. Kicsit változtattak a számozáson, a 1070-et inkább a 980-al érdemes összevetni. Nagyon ügyes marketinghúzás, így sokkal nagyobbnak látszódik a fejlődés mint valójában.

Nokia 3310->3410->3100->6500 Slide(RiP Nokia)->Acer Liquid Metal ->Xiaomi Hongmi-> Xiaomi Redmi Note 3

(#10) #00137984 válasza gbors (#8) üzenetére


#00137984
törölt tag

Szerencsémre igy most elfogadható fogyasztással, melegedéssel, ehez mérten zajszinttel tudok játszani. A teljesitmény relativ kérdés, mert most igy elégnek érzem.

(#9) Nvidia oldalon akkor a marketing is zöldebb. :)

[ Szerkesztve ]

További hozzászólások megtekintése...
Copyright © 2000-2024 PROHARDVER Informatikai Kft.