Bevezető
A Barts chip erősen eltérő filozófiát képviselt az AMD korábbi GPU-hoz képest - az RV770 óta
a legalacsonyabb ALU:ROP aránnyal rendelkezik, és ha az R600 és az RV670 igencsak gyenge ROP-jait tekintetbe
vesszük, akkor ez a mondás egészen a 2900XT-ig visszamenőleg igaz. Ehhez képest a Cayman ugyanannyi (bár
valamelyest felturbózott) ROP-pal van felszerelve, viszont az ALU-kapacitás terén 40%-kal előrébb tart - és
ha figyelembe vesszük az AMD prognózisát a Caymanben dolgozó VLIW4 egységek hosszú távon elérhető hatékonyságával
kapcsolatban, akkor ez a szám +70%, amivel már a Cypress ALU:ROP arányát is bőven megelőzi a vicces nevű GPU.
Mivel a Barts hatékonyság terén igencsak odapörkölt a Cypress-nek, első ránézésre nem tűnik túlzottan jó lépésnek
az az irány, amit a Cayman chippel vett az AMD - viszont, ahogy minden új GPU-nál, a Caymannél is van
számtalan kisebb-nagyobb javítás, amik akár teljesen más irányba is dönthetik az új architektúra
teljesítőképességét.
Nézzük, mi van különbség a két GPU között áttekintés szintjén:
Cayman és Barts blokkdiagram - az egeret a képre rámozgatva / lemozgatva vált a GPU-k között
A felépítés ismertetésébe ezen a szinten nem megyünk bele, csak a két lényeges
látható, és az egy szintén lényeges, de nem látható differenciára térünk ki:
- Míg a Barts-ban egy vezérlő engine van, ahol két elem (Rasterizer, Hierarchical Z) duplikált, és az engine után a dispatch-tól kezdve beszélünk két ALU-TEX tömbről, a Caymanben már maga az engine is duplikált, és csak a CPU irányából érkező parancsok feldolgozása közös. Mivel a legkomolyabb komplexitást szerintünk a Cypress-ben a két tömb megalkotása hozta be, a teljes engine duplázása már csak előnyt jelent a Caymannek, hátrányt aligha.
- Nehéz nem észrevenni a SIMD tömbök száma közötti különbséget - míg a Barts-ban 14 tömb van, darabja 4 textúrázóval és 16 VLIW5 szperskalár ALU-val (=64 egyszerű és 16 komplex ALU), addig a Cayman 24 tömbbel bír, és mivel a textúrázók és a SIMD-ek viszonya nem változott, brutális mennyiségű, 96 textúrázó van a teljes GPU-ban. ALU-k terén van a leginkább látványos változás: továbbra is 16 szuperskalár ALU van egy SIMD-ben, viszont ezek mostantól VLIW4-esek, és egy ilyen egység 4 egymással egyenlő, a korábbi komplex és egyszerű számolók közötti tudású skalár ALU-ból áll.
- Nem látszik a képen, hogy a ROP-ok is kaptak egy kis turbózást - a leglényegesebb, hogy az INT16 argumentumú műveletek sebessége megkétszereződött, ill. az FP32-es műveletek duplájára, vagy esetenként négyszeresére gyorsultak. Ennek a jelentőségét egyelőre nem tudjuk - de miután a kártya erősen backend limitáltnak látszik, azokat az eredményeket lesz érdemes figyelni, ahol a Cayman és a Barts közötti különbség az átlagosnál nagyobb.
Előzetes teljesítmény-elemzés
A strukturális áttekintés után nézzük a felépítést számokban:
VGA neve | Barts @stock (HD6870) |
Cayman @Barts | Cayman @stock (HD6970) |
Cayman vs Barts |
HD6970 vs HD6870 |
Core órajel | 900 MHz | 900 MHz | 880 MHz | 0% | -2.3% |
Shader órajel | 900 MHz | 900 MHz | 880 MHz | 0% | -2.3% |
Memória-órajel | 1050 MHz | 1050 MHz | 1375 MHz | 0% | 31.0% |
Memória mennyisége | 1024 MB | 2048 MB | 2048 MB | ||
Tranzisztorok száma | 1700M | 2640M | 2640M | ||
Gyártástechnológia | 40nm (TSMC) | 40nm (TSMC) | 40nm (TSMC) | ||
Geometriai egységek | 1 | 2 | 2 | 100% | 100% |
Scanline konverzió | 32 Pix/clock | 32 Pix/clock | 32 Pix/clock | 0% | 0% |
ALU egységek (SP-k) * | 1120 (VLIW5) | 1536 (VLIW4) | 1536 (VLIW4) | ||
Textúrázó egységek | 56 | 96 | 96 | 71.4% | 71.4% |
ROP egységek ** | 32 | 32 | 32 | 0% | 0% |
Memóriabusz és típus | 256-bit gDDR5 | 256-bit gDDR5 | 256-bit gDDR5 | 0% | 0% |
Triangle setup | 900 Mtri/sec | 1800 Mtri/sec | 1760 Mtri/sec | 100% | 95.6% |
Scanline konverzió | 28.8 GPix/sec | 28.8 GPix/sec | 28.2 GPix/sec | 0% | -2.3% |
Számítási teljesítmény * | 2016 GFlops | 2765 GFlops | 2703 GFlops | 37.1-71.4% | 34.1-67.6% |
Texel fillrate, 32-bit (FP10) | 50.4 GTex/sec | 86.4 GTex/sec | 84.5 GTex/sec | 71.4% | 67.6% |
Pixel fillrate ** | 28.8 GPix/sec | 28.8 GPix/sec | 28.2 GPix/sec | 0% | -2.3% |
Z-only fillrate ** | 115.2 GPix/sec | 115.2 GPix/sec | 112.6 GPix/sec | 0% | -2.3% |
Memória-sávszélesség | 134.4 GB/sec | 134.4 GB/sec | 176.0 GB/sec | 0% | 31% |
*: a két chip számítási kapacitása nem hasonlítható közvetlenül össze,
mert eltérő felépítésűek az ALU blokkok. Nyers számítási teljesítményben 37% a differencia a Cayman és a Barts
között, viszont ha elhisszük, hogy a VLIW4 blokkok átlagosan ugyanolyan átbocsátó-képességgel rendelkeznek,
mint a VLIW5 blokkok, akkor ez a differencia 71% is lehet.
**: a Cayman chip ROP-jai INT16 és FP32 adattípusok használatakor
a Cypress-hez és a Barts-hoz képest dupla sebességgel üzemelnek. Ennek gyakorlati jelentőségét egyelőre nem
tudjuk felmérni.
Összefoglalva a különbségeket:
- A GPU elejében "mindössze" annyi a differencia, hogy a két raszterizáló egység és a két ultra-threaded dispatch processor mellett most már setup engine-ből is kettő van, és duplázódott a tesszelátor is. Ennek gyakorlati jelentősége inkább a tesszeláláció-intenzív esetekben lesz.
- Textúrázókban a Cayman nagyon durván erős, 71%-kal van neki több, mint a Barts-nak - viszont azt láttuk, hogy a Barts elég jól egyensúlyban van, azaz a sok extra textúrázó csak az erre kifejezetten éhes játékokban lesz érdekes.
- A számítási kapacitás megítélése nem egyszerű - nyers számok terén a táblázat lábjegyzetében említett 37% él, de mi is úgy gondoljuk, hogy a VLIW4-es szuperskalár egységek kihasználtsága jobb, így minimum 50-60%-nak gondoljuk itt a Cayman előnyét.
- Nem értjük viszont a backendet. A memória-sávszélesség még istenes a magas gDDR5-órajellel (láttuk a HD6970 tesztben, hogy ezen a téren elérte a GTX480-at), viszont a 32 ROP a magas órajel ellenére igen soványnak tűnik. Sajnos az adattípustól függően kétszeres vagy akár négyszeres (hmmm...) ROP-sebesség nagyon kevéssé megfogható, nem tudjuk, hogy a tesztünkben használt játékokban valamelyik "begyorsult" adattípus szerepel-e dominánsan - erre mindenképpen figyelni fogunk a mérések elemzésekor.
Azt láttuk tehát, hogy a Cayman chip kétszer gyorsabb setupban a Barts-nál,
valamint ALU és TEX kapacitás terén brutális előnnyel rendelkezik. Miután a Barts chip sikerét elsősorban
annak tulajdonítjuk, hogy a Cypress-hez képest kevesebb ALU és TEX egység a jobb egyensúly miatt alig jelentett
hátrányt a teljesítményben, nem értjük, miért ilyen irányba ment a Cayman - hacsak a felokosított ROP-ok
nem hoznak valami csodát. Kiegyensúlyozott esetben optimális becslő alkalmazásunk szerint kb. 35%-kal lesz
gyorsabb a Cayman chip a Barts-nál azonos órajelek mellett, és 40% körül lesz a differencia a gyári órajeles
modellek között - de a fentiekből az látszik, hogy a Cayman esetében szó sincs kiegyensúlyozott chipről, és mivel
a Barts erőssége a kevés ALU/TEX egység jó kihasználása, az azonos órajelen futtatott variánsok között jóval
kevesebb differenciára számítunk.
Tesztkörnyezet
A konfiguráció elemei | |
Alaplap | Gigabyte P45-DS3R, FSB @400MHz |
CPU és órajel | Intel Q9550 @Q9770 (3.2GHz, 8x400) |
CPU hűtés | Cooler Master HyperTX3 |
Memória | 4x1GB Geil Ultra DDR2-8500 |
Memória beállítások | 1066MHz (2.66x400), 5-5-5-15, tRD: 8 |
Tápegység | Corsair TX650 |
Operációs rendszer | Windows 7 x64 |
VGA | Core clock | Shader clock | Memory clock | Driver |
Radeon HD6870 | 900 MHz | 1050 MHz | Catalyst 10.10d hotfix | |
Radeon HD6970 | 900 MHz | 1050 MHz | Catalyst 10.12a hotfix | |
Radeon HD6970 | 880 MHz | 1375 MHz | Catalyst 10.12a hotfix |
Nem egyformák a driverek a két kárta esetén, de emiatt nem aggódunk -
a 10.10-es és a 10.12-es driverek között érdemi különbség nincs (ld.
tesztünkben is).
Tesztmódszer, a tesztben résztvevő játékok
Tesztjeinkben minden játékhoz 3 beállítást használunk: Balanced, High és Max, sorban
az alsó középkategóriás, a középkategóriás és a felső / csúcskategóriás kártyákkal szemben támasztható elvárásokhoz
szabva. A Balanced és a High beállítást 1680x1050-es felbontásban vetjük be, az 1920x1080-as
felbontásnál pedig szintén megjelenik a High beállítás, és szerepel a Max is - így lesz
játékonként 4 tesztesetünk, amelyeket háromszor lemérünk, és a grafikonokra a mérések átlaga kerül.
Megjegyzés: architektúrával foglalkozó cikkeinkben előfordul, hogy csak a két 1920x1080 teszteset
szerepel - ez a helyzet most is.
A játékokban vagy beépített benchmarkot használunk, vagy egy-egy kellően intenzív jelenetet
játszunk le. Mindkét esetben a méréseket a fraps-szal végezzük - a grafikonokon szereplő
átlag fps értékekhez a fraps számait használjuk, a minimum-fps-eket viszont egy egyéni statisztikai
módszerrel állítjuk elő a mérés alatt megjelenített frame-ek kiszámolásához szükséges időkből. Az így kapott
értékek lényegesen jobban jellemzik a játékokban tapasztalt folyamatosság-érzetet, mint az Internet-szerte
használt abszolút minimum-érték.
A tesztekben használt játékok / benchmarkok:
Battlefield: Bad Company 2 |
Crysis Warhead | F1 2010 | Just Cause 2 | Lost Planet 2 |
Mafia II | METRO 2033 | S.T.A.L.K.E.R.: Call of Pripyat |
Unigine Heaven |