Představení a srovnání grafických procesorů ATI RV770 a NVIDIA G(T)200



Podobné dokumenty
PŘEDSTAVENÍ GRAFICKÉHO PROCESORU NVIDIA G200

Architektura grafických ip pro Xbox 360 a PS3

Nová architektura od ATI (Radeon HD 4800) Datum: Vypracoval: Bc. Radek Stromský

PROCESOR. Typy procesorů

GPU A CUDA HISTORIE GPU CO JE GPGPU? NVIDIA CUDA

GRAFICKÉ ADAPTÉRY. Pracovní režimy grafické karty

Intel (2) Intel (1) Intel (3) Intel (4) Intel (6) Intel (5) Nezřetězené zpracování instrukcí:

Pokročilé architektury počítačů

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard

HW počítače co se nalézá uvnitř počítačové skříně

ARCHITEKTURA AMD PUMA

Pokročilé architektury počítačů

Grafické karty. Autor: Kulhánek Zdeněk

Nvidia CUDA Paralelní programování na GPU

Pokročilé architektury počítačů

Zobrazovací a zvuková soustava počítače

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Nvidia CUDA Paralelní programování na GPU

Volitelný počet jader

Procesor Intel Pentium (1) Procesor Intel Pentium (3) Procesor Intel Pentium Pro (1) Procesor Intel Pentium (2)

Architektura počítače

Úvod do architektur personálních počítačů

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Karel Johanovský Michal Bílek SPŠ-JIA GRAFICKÉ KARTY

Herní PC HAL3000 Artemis výkonný lovec pro nekončící zábavu

Procesor. Procesor FPU ALU. Řadič mikrokód

PROCESORY. Typy procesorů

Pokročilá architektura počítačů

Představení a vývoj architektur vektorových procesorů

Hardware. Z čeho se skládá počítač

Charakteristika dalších verzí procesorů v PC

GPU a CUDA. Historie GPU. Co je GPGPU? Nvidia CUDA

Přednášky o výpočetní technice. Hardware teoreticky. Adam Dominec 2010

Pokročilé architektury počítačů

Grafická karta SVGA (2) Grafická karta SVGA (1) Grafická karta SVGA (4) Grafický akcelerátor: Grafická karta SVGA (3) Grafická karta SVGA (5)

GPGPU Aplikace GPGPU. Obecné výpočty na grafických procesorech. Jan Vacata

GPGPU. Jan Faigl. Gerstnerova Laboratoř pro inteligentní rozhodování a řízení České vysoké učení technické v Praze

Paměti EEPROM (1) Paměti EEPROM (2) Paměti Flash (1) Paměti EEPROM (3) Paměti Flash (2) Paměti Flash (3)

Úvod do GPGPU J. Sloup, I. Šimeček

Technické prostředky počítačové techniky

Masivně paralelní zpracování obrazu v prostředí systému VisionLab Liberec Roman Cagaš, rc@mii.cz

Část 1 ZÁKLADNÍ RYSY VÝPOČETNÍ PROSTŘEDKŮ DOSTUPNÝCH NA IT4INNOVATIONS

HAL3000 MČR Pro tak hrají skuteční profesionálové

Základní pojmy a historie výpočetní techniky

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Obecné výpočty na GPU v jazyce CUDA. Jiří Filipovič

Vícejádrový procesor. Dvě nebo více nezávislých jader Pro plné využití. podporovat multihreading

Geekovo Minimum. Počítačové Grafiky. Nadpis 1 Nadpis 2 Nadpis 3. Božetěchova 2, Brno

Pokročilé architektury počítačů

Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky. referát do předmětu: Pokročilé architektury počítačů.

Architektura Intel Atom

PV109: Historie a vývojové trendy ve VT

Jednokamerový systém pro sledování objektů

Co je grafický akcelerátor

Surfels: Surface Elements as Rendering Primitives

Hardwarová akcelerace HD videa v návaznosti na architektury čipu grafických karet

Paralelní systémy. SIMD jeden tok instrukcí + více toků dat jedním programem je zpracováváno více různých souborů dat

Technická specifikace ČÁST 1. Místo plnění: PČR Kriminalistický ústav Praha, Bartolomějská 10, Praha 1

Intel Microarchitecture Nehalem

Grafické karty s podporou DirectX 11 Quynh Trang Dao Dao007

Ro R dina procesor pr ů Int In e t l Nehalem Šmída Mojmír, SMI108 PAP PA 2009

Vyuºití GPGPU pro zpracování dat z magnetické rezonance

Jiné výpočetní platformy J. Sloup, M. Skrbek, I. Šimeček

Složení počítače. HARDWARE -veškeré fyzicky existující technické vybavení počítače 12 -MONITOR

GRAFICKÉ KARTY. Pracovní režimy grafické karty. Základní blokové schéma grafické karty

GPU a CUDA. Historie GPU. Co je GPGPU? Nvidia CUDA

Blue Gene Vysoká škola báňská-technická univerzita Ostrava. Blue Gene. Karel Chrastina. Úvod. Blue Gene L. Blue Gene P.

Základní deska (mainboard)

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

Operační paměti počítačů PC

Intel Centrino 2 - Úvod a procesory

2.8 Procesory. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

Základní deska (1) Označována také jako mainboard, motherboard. Deska plošného spoje tvořící základ celého počítače Zpravidla obsahuje:

Výzva k podání nabídky včetně zadávací dokumentace na veřejnou zakázku malého rozsahu

ORGANIZAČNÍ A VÝPOČETNÍ TECHNIKA

Paměťové prvky. ITP Technika personálních počítačů. Zdeněk Kotásek Marcela Šimková Pavel Bartoš

Grafické adaptéry a monitory

Forenzní analytická jednotka - technická specifikace (9 ks)

nutné smazat zároveň i všechna ostatní zainteresovaná paměťová místa přepisovaném

Další aspekty architektur CISC a RISC Aktuálnost obsahu registru

Grafické adaptéry a monitory

Počítačová grafika Grafické karty a monitory (metodické materiály) dr. Josef Šedivý Centrum talentů UHK, 2010

Textury v real-time grafice Josef Pelikán, MFF UK Praha Josef.Pelikan@mff.cuni.cz

Hlavní využití počítačů

CHARAKTERISTIKY MODELŮ PC

REALIZACE SUPERPOČÍTAČE POMOCÍ GRAFICKÉ KARTY

Testujeme notebook pro opravdové hráče: Toshiba X200

Jakub Novák 4.ledna ledna

ARCHITEKTURA PROCESORŮ

G R A F I C K É K A R T Y

tímto vyzývá zájemce k podání nabídky na veřejnou zakázku

Datasheet Tenký klient FUJITSU FUTRO S720

ORGANIZACE A REALIZACE OPERAČNÍ PAMĚTI

DUM č. 14 v sadě. 31. Inf-7 Technické vybavení počítačů

Příloha č.2 - Technická specifikace předmětu veřejné zakázky

GPU jako levný výpočetní akcelerátor pro obrazovou JPEG2000 kompresi. ORS 2011 Karviná,

architektura mostů severní / jižní most (angl. north / south bridge) 1. Čipové sady s architekturou severního / jižního mostu

Otázka číslo 3 Hardware PC komponent

Roman Výtisk, VYT027

Přehled paralelních architektur. Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur

Transkript:

Představení a srovnání grafických procesorů ATI RV770 a NVIDIA G(T)200 Adam Količ, kol400

NVIDIA G(T)200 Technické info: 65nm (G200b - 55nm) 1,4 mld. tranzistorů 240 stream procesorů 32 ROP/RBE 80 texturovacích jednotek podpora pamětí GDDR3 512-bit široká sběrnice G(T)200 představuje z technického hlediska evoluci staršího čipu G80 s několika vylepšeními efektivity, novými funkcemi a zvýšeným počtem výpočetních jednotek. Sama nvidia ji označuje jako druhou generaci unified visual computing architekturu. Zhruba od roku 2005, kdy začal vývoj nového čipu, byly hlavní cíle inženýrů v nvidii vyrobit čip, který by dosahoval alespoň dvojnásobný výkon čipu G80 s orientací na budoucnost a měl odstraněny jeho nedostatky. Přidány byly i funkce, které konkurence v podobě ATI už nějakou dobu poskytovala. Mezi takovéto funkce patří schopnost vypnout nepotřebné jednotky (clock gating) ve 2D a snížit pracovní frekvenci. Výsledkem je 25W spotřeba GTX280 ve 2D. Díky tomu je i průměrná spotřeba o dost nižší než se podle TDP mohlo zdát. Pro přehrávání videa má čip taky svůj mód, kdy šetří energii a je využit jen VP2 v NVIO čipu. Na rozdíl od předchozích čipů, které měli jen 8-bit color výstup má G200 10-bit color výstup. Celkově obsahuje jádro 10 clusterů. nvidia je označuje jako TPC (Texture/Thread Processing Clusters), ty jsou známé už z G80 (ten jich měl 8). Malé zelené části uvnitř jsou aritmetické jednotky neboli SP (stream processors). Jsou seřazeny do skupin po osmi a tato formace se nazývá SM (shader multiprocessor). Dohromady tedy celé jádro obsahuje 240 SP, což je 2 krát

více než má G80/G92. Jednou ze změn je tedy zvýšení SM v každém TPC. Filtrovací a adresovací jednotky (hnědé jednotky) se nadále nacházejí v TPC, ale jejich poměr k SP se změnil z 1:2 na 3:1. Potřeba aritmetického výkonu narůstá stále rychleji než potřeba výkonu texturovacího a tak je tento krok nvidie pochopitelný. Ve spodní části se nacházejí oddíly rasterizačních jednotek, které jsou připojené k 64-bit paměťovému řadiči. Celkově má G200 proto 512-bit široký crossbar. Celkově se největší změny dotkly shadercore. Díky tomu, že se nvidia zaměřila u G200 na GP- GPU schopnosti, máme k dispozici o hodně více detailů o architektuře jádro než u předcházejících GPU. Můžeme se tedy blíže podívat na Texture Processing Cluster nebo cluster, jak pracuje atd. Shadercore G200 je složený z TCP jednotek a L1 cache. Uvnitř SM se nachází jedna IU (instruction unit), osm SP a 16KB lokální sdílená paměť. Díky této paměti si mohou jednotlivé SP, pokud je vykonávána GP-GPU aplikace, vyměňovat údaje. Výsledkem je zvýšená efektivita a rychlost zpracování algoritmů. Navýšení SP na 240 by nepřineslo mnoho, pokud by je čip neuměl dostatečně využít. Klíčové pro koncový výkon je tedy optimální vytížení všech jednotek. V samotném jádře na hw bázi to mají na starosti IU jednotky, které nevykazují ztrátu výkonu při výměně vlákna (threadu). Každý SM má jednu IU jednotku, která dokáže řídit skupinu 32 paralelních vláken. nvidia je nazývá warps. G80 byl omezený jen na 24 warps, proto se v G200 zvýšil počet paralelně vykonatelných vláken z 12228 na 30720. Warp je jedna ze základních jednotek G200 branching granularita je jeden warp, tedy 32 pixelů nebo 16 vertices. Kdyby nastala situace, že vlákno ve warpu potřebuje operaci s velkou latencí (např. načtení textury, přístup k paměti), tak ho dokáže IU jednoduše vyměnit s jiným z mnoha warpů, které čekají na vykonání. Mezitím se načítají potřebné údaje a následně se vykonává vyměněný warp. Čip takto dokáže zakrýt latenci a vytěžit co nejlepší jednotlivé výpočetní jednotky. Jednotlivé TPC mezi sebou komunikují přes MIMD (Multiple Instruction, Multiple Data). SM mezi sebou komunikují přes SIMT (Single Instruction, Multiple Threads), který se podobá SIMD (Single Instruction, Multiple Data). Jednotlivé SP jsou v G200 víceméně skalární jednotky, to znamená, že tyto ALU vypočítávají za takt jednu komponentu z RGBA (red, green, blue, alpha). Každý cluster může být během jednoho taktu zásobený různými komponentami, podle toho zdali je momentálně nejdůležitější na výpočet apod. Clustery samy o sobě jsou tedy velmi flexibilní. Méně pružné se zdají být SM, které mohou přes SIMT počítat jen tu samou komponentu. Není proto možné v rámci jednoho clusteru v jednom taktu vypočítat různé komponenty. Po jednom taktu, ale můžou ALU počítat různé komponenty. SM jsou přesto, díky efektivnímu thread schedulingu, velmi dobře vytížené.

Aritmetický výkon G200 by se tedy, alepsoň podle počtu SP, oproti G80 ani nezdvojnásobil. Skutečnost je ale jiná. Každá ALU nebo SP dokáže za jeden takt na G80 vykonat jednu operaci MADD (MUL + ADD) a jednu MUL operaci. To se nezměnilo ani na G200. Zvýšilo se, ale výrazně vytížení. G80 mohl využít MADD jednotku úplně pro general shading, ale druhá MUL jednotka byla většinou zatížena korekcí perspektiv, interpolací nebo speciálními funkcemi SFU. Vytížení druhé MUL jednotky na G80/G92 bylo proto v praxi jen okolo 15%. Proto mají reálně všechny GeForce řady 8/9 aritmetický výkon o třetinu nižší než je udávaná teoretická hodnota. Na G200 se však druhá MUL jednotka dá podle nvidie využít až na 93-94% pro general shading. G8x/G9x se mohly dostat s dlouhými shadery do situace, kdy je limitoval registr file. Výsledkem toho byla ztráta výkonu. Díky jeho zdvojnásobení v G200 na jeden SM by neměl mít čip problém ani s delšími a komplexnějšími shadery. Jeho zvětšení nezabere velkou část jádra, avšak nárůst výkonu je značný hlavně s GP-GPU aplikacemi. Nedostatkem G8x/G9x oproti konkurenci byl i geometry shader a stream out výkon. Jsou to funkce Direct3D 10, které se ovšem ve hrách zatím tolik nevyužívají, ovšem do budoucnosti se to zřejmě změní. G200 proto má 6 krát větší interní buffer output. Z tohoto důvodu dosahuje čip až 4x vyšší geometry shader a stream out výkonu než G80. Jelikož byl G200 do značné míry optimalizovaný pro GP-GPU je logická podpora DP (Double Precision). Představuje tedy první čip nvidie s podporou DP a jde v porovnání s RV670/RV770 jinou cestou. Na rozdíl od RV670/RV770, kde 4/5 SP, ty menší, dokážou počítat DP se čtvrtinový výkonem, má G200 v každém SM jednu zvláštní k tomu určenou Double Precision MAD jednotku. Dohromady 3 takové jednotky v clusteru, které splňují IEEE 754 standard, tedy 64-bit přesnost zpracování údajů. Pro "obyčejné lidi" je to funkce čipu, kterou pravděpodobně nikdy nevyužijí. Takovou větší přesnost zpracování dat potřebují hlavně vědci, kterým single presision (32bit přesnost) nestačí. Celkový DP aritmetický výkon G200 je díky 30 MAD jednotkám * běžícím na frekvenci 1,296 GHz * 2 FLOPS = 77,76 GFLOP/s. Zhruba stejný výkon jako 8 jaderný Xeon procesor. Ve srovnání s RV670 a jeho 99 GLFOP/s DP, který podporoval jako první consumer čip 64-bit přesnost, je to poměrně málo. Nezměnilo se to ani v RV770, který má 800 SP a logicky ještě vyšší double precision aritmetický výkon. ATI má díky tomu jeden, pro trh s profesionálními kartami, kde se také využívají desktop čipy, podstatný argument, který by mohl převážit. Jeden fakt ale hraje ve prospěch G200. Tyto speciální jednotky dokáží počítat i speciální funkce (cos, sin atd.) v jednom taktu, na rozdíl od ALU RV670, které jsou DP schopné. G200 obsahuje v každém clusteru dvě quad-tmu (texturovací jednotky), sestávající z 2x4 TFU (filtračních) a 2x4 TAU (adresovacích jednotek, které dokáží za takt filtrovat a adresovat osm textur za takt). Oproti G80 je to navýšení, neboť dokázali tyto adresovat jen čtyři textury za takt a filtrovat osm. Nezměnil se ale výkon při FP16 texturách - jsou filtrované nadále s polovičním výkonem. Protože má G200 deset TPC, zvýšil se texturovací výkon ze 64 v G92 na 80 texelů za takt. Těchto 80 TMU mají dohromady 48GTexel/s čistý bilinear texelfillrate. Na první pohled by se mohlo zdát, že se TMU vůbec nevylepšili. Není to ale zcela pravda, oproti předchozím čipům G8x/G9x pracují díky vylepšenému scheduleru v průměru o 22% efektivněji. Je logické, že teoretická texelfillrate G200 se proto blíží více realitě jak to bylo s předchozími čipy. Navýšen byl i počet ROP oddílů. G200 jich má osm, o 50% více než G80 a dvakrát tolik než G92. Jinak řečeno - G200 má celkově 32 ROP, přičemž dokáže každý ROP oddíl za takt ukončit práci na čtyřech pixelech, celkem tedy 32 pixelů za takt. Výkon ROP tedy vzrostl poměrně k výkonu zbytku čipu, aby ho zbytečně nelimitoval. Výsledkem je, že GeForce GTX 280 má vyšší teoretický pixelfillrate než GeForce 9800 GX2. Podporovány jsou stejné antialiasing (AA) módy jako s G80/G92 - multisampling, supersampling (pomocí aplikace nhancer), transparency adaptive a coverage. Oproti G80 se ale dočkali několika vylepšení, z nichž některé byly použity již v ROP G92 a odrážejí se ve výkonu. Týkají se lepší komprese

Z/stencil, inteligentního z-culling a výkonnějšího Early-Z, kvůli většímu počtu ZROP Novinkou je také schopnost provádět frame buffer blends v jednom taktu na rozdíl od dvou předchozích čipů. Blend výkon G200 je proto 32 samplů za takt, oproti 12 samplů za takt na G80. Vyšší počet ROP je vždy vítán, protože hrají u GeForce karet velkou roli při antialiasingu. Více ROP tedy znamená vyšší FPS při vyšší úrovni antialiasingu. 10 clusterový G200 potřebuje kvůli vyššímu počtu jednotek a výkonu okolo 140 GB/s propustnost. Potřebná propustnost se dá dosáhnout dvěma způsoby. Díky šířce sběrnice a frekvenci paměti. Kvůli brzkému vydání G200, se nvidia musela rozhodnout pro 0,83 ns GDDR 3 paměti od Hynixu, protože tehdy bylo použití GDDR 5 čipů nemyslitelné pro dostupnost. Protože má G200 stále crossbar s některými vylepšeními a počet ROP závisí přímo úměrně na šířce sběrnice, vyplývá nám, že GTX 280 má 512-bit sběrnici. Ve spojení s 1107 MHz (reálně) taktovaným pamětmi GDDR3 nám to dává kolem 141 GB/s. Osekaná verze GTX 260 má 448bit sběrnici a 999 MHz (1ns) GDDR 3 paměti - výsledná propustnost je tedy 111,9 GB/s. Znovu bylo použito rozdělení na 64bitové kanály, neboť jsou 32-bit příliš drahé na počet tranzistorů. 16 paměťových čipů muselo být umístěných na PCB, protože dva 32-bit paměťové čipy tvoří jeden 64-bit kanál. Konečný design má 8 čipů na přední straně a 8 na zadní. Celková kapacita VRAM GeForce GTX 280 je 1GB, jak se pro high-end kartu patří. GTX 260 se bude muset spokojit s 896MB VRAM. Momentálně to ale ve hrách vypadá tak, jako kdyby neuměly tyto karty využít dostupnou propustnost. Je vidět, že celkové změny G200 jsou oproti předchůdci menší, než ty které provedla ATI na RV770. Důvod je jednoduchý - nvidia podcenila ATI a G80 je v podstatě velmi dobrý základ, který nebylo třeba tak výrazně předělat. Určité nedostatky si však G200 vzal od G8x/G9x - špatný výkon triangle setupu, který se projeví ve výkonu s 8xMSAA. Crossbar se rovněž nezměnil a zabere proto spolu s paměťovým subsystémem opravdu hodně tranzistorů - skoro tolik jako měl R520.

ATI RV770 Technické info: 55nm 956 mil. tranzistorů 800 stream procesorů 16 ROP/RBE 40 texturovacích jednotek podpora pamětí GDDR5 256-bit široká sběrnice

Texturovací jednotky a SIMD bloky Na předchozím jádře R600 se nacházelo 16 velkých texturovacích jednotek a nepočítalo se s tím že by jich do budoucna bylo zapotřebí více. Byly tak tedy navrženy aby dávaly co nejvyšší možný výkon. Nejvyšší počet tranzistorů na tomto jádře zabírala podpora FP16 (floating point) filtrace v jediném taktu a byl to jeho nativní formát, což také znamenalo, že všechny 8-bitové textury se převáděly do formátu FP16. Dále byly pro texturovací jednotky R600 specifické tzv sampling units (samplery). Ty měly za úkol zpracovávat všechny textury, u kterých není potřeba filtrace, jde tedy např. o vertex texturing (displacement mapping - zvlnění povrchu podle výškové textury), různé alpha textury (průhlednost povrchů), post-efekty a techniky využívající rendering do textury (generování textury ve stejném rozlišení, jako má vykreslovaný obraz). V moderních hrách jsou tyto operace z celého texturingu využity až z 25% a samplery tak měly zastat veškeré tyto úkony, aby tak nebyly brzděny samotné texturovací jednotky. Kvůli zajištění maximálního využití texturovacích jednotek, měly navíc všechny ALU přístup i k texturovacím jednotkám, které jim primárně nepatřily. Bohužel tento koncept nedosáhl vysokého uplatnění, jelikož se FP16 texturing a nefiltrované operace ve hrách nerozšiřovaly tak rychle než se čekalo. To znamená, že v době vydání R600, byla tato architektura úžasné pro 10% aplikací, vhodná pro 40%, ale nevhodná pro 50% zbývajících. Texturovací quad-blok ATI R600 Texturovací quad-blok ATI RV770 U nového jádra tak bylo rozhodnuto tuto koncepci změnit. Byla vypuštěna full-speed FP16 filtrace a zpět byla vrácena Int8 filtrace (8-bitové textury). FP16 filtrace se tedy prováděla ve dvou taktech. Aby však nedocházelo k poklesu výkonu u těch 10% aplikací, které tuto filtraci často využívalo, tak byl 2,5 krát zvýšen počet jednotek. Vzhledem k tomu, že bylo hodně texturovacích jednotek, nemělo už nadále smysl ponechávat na jádře samplery a tak byly úplně vypuštěny. Další změnou oproti R600, bylo rozdělení obrazu na čtverce (původně ve starších jádrech R5xx a R3xx), kde je každý z těchto čtverců vykreslován vlastním výpočetním blokem tzv. quadem či SIMDem. Z toho vyplývá, že mezi výpočetními jednotkami stačí sdílet pouze texely (texture element základní jednotka textury) ležící na rozhraní těchto čtverců. Sílení texturovacích jednotek pro všechny ALU tak nebylo potřeba, protože každý SIMD používá jenom ty své. Ke sdílení těchto

texelů se používá jednoduchý crossbar řadič mezi L1 a L2 cache. 5D ALU: SP v pěticích Zatímco výpočetní jednotky a jejich uskupení bylo předěláno tak, aby byl čip co nejlépe rozšířen a texturovací jednotky byly upraveny tak, aby byly vhodné pro co nejvyšší počet aplikací, samotné ALU zůstaly bez výraznější změny. Jsou to i nadále superskalární 5D jednotky (složené z pěti SP Stream Processor). Primární SP navíc obsahuje speciální funkce a všechny byly navíc doplněny o celočíselné operace, což bylo vynuceno v důsledku specifikace DirectX 10. ALU RV770 Render back-ends (RBEs, ROPs) anti-aliasing Resolve (vyhodnocení dat jednotlivých vzorků, na jehož základě je určená finální barva vyhlazeného pixelu) bylo na starších jádrech (R300 R580) podporováno fixně na úrovni ROPs. DirectX 10 a 10.1 však vyžaduje korektnější metodu anti-aliasingu nevytvářející artefakty v kombinaci s HDR. Dále je vyžadována podpora pro programovatelný resolve filtr, takže od jádra R600 ATI rozhodla fixní resolve opustit a nahradit jej zpracováním resolve průchodu pomocí shader core (ALU), kterému i přizpůsobila design čipu (fast path mezi ROP a shader core, což znamenalo přesun dat pouze na úrovni čipu, nemusela být tedy použita grafická paměť). ROP (RBE) blok RV770 Jádro RV770 kombinuje to nejlepší z předchozích jader (R600, R580 a Xenosu) a přidávádalší speciality. ROPs z R600 byly doplněny o fixní resolve pro základní režimy FSAA (full-scene anti-aliasing) s box filtrem (2x, 4x, 8x), podobně jako na R580, dále byl navíc zdvojnásoben výkon při generování MSAA (Multisample anti-aliasing) vzorků po vzoru Xenosu. V

kombinaci s rychlým resolve, vysokou datovou kompresí a podporou GDDR5 to přineslo dosud nejnižší propady výkonu při FSAA. Dále byla vylepšena podpora pro shader-based resolve implementací nového paměťového řadiče, který na rozdíl od předchozího ring-bus konceptu snížil latence a propady výkonu při tomto režimu. Srovnání R580, R600, RV770 a Xenosu: Xenos R580 R600 RV770 bandwidth ROPs/Z-buffer 256 GB/s 50 GB/s 106 GB/s 115 GB/s Z-vzorků bez AA v taktu 32 (64 bez barvy) 16 32 64 MSAA vzorků na pixel a takt 4 2 2 (při AA 4x/8x) 4 pixelů s AA 4x v taktu 8 (full-speed) 8 (half-speed) 8 (half-speed) 16 (full-speed) Paměťový řadič: Hub Od doby R200 vystřídala ATI 4 druhy paměťových řadičů: Crossbar nejstarší. Všechny jednotky, které mají mít přímý přístup do pamětí, jsou připojeny ke všem paměťovým kanálům. Tento typ řadiče má nízké latence a při nízkém počtu klientů, které je třeba připojit, je i poměrně jednoduchý, ale čím více klientů a čím širší sběrnice, tím rychleji roste na komplexnosti. Protože propojujeme ve stylu "každý s každým", narůstá jeho složitost s šířkou sběrnice kvadraticky, takže není výhodný pro široké sběrnice. Tento typ řadiče využívala ATI na čipech R200 - R480. nvidia využívá crossbar od GeForce 4 dosud. Hybridní ring-bus - koncept, který ATI zavedla na R520. Pro načítání dat b yl používán ring-bus, pro zápis byl používám crossbar. Programovatelnost řadiče umožnila řídit přenosy efektivnějším způsobem a eliminovat ty neefektivní. Symetrický ring-bus - R600. Pro zápis i čtení je používán ringbus. Výhodou je minimální nárůst komplexnosti při širokých datových sběrnicích. Hub - RV770. RV770 zvýšila počet SIMD, takže narostl počet klientů, které je třeba připojit ke sběrnici. Ačkoli byl ring-bus efektivní při širokých sběrnicích, narůstala by jeho velikost s počtem klientů, které by musel spojovat. Proto ATI vyvinula nové distribuované řešení, které zakládá na podobných myšlenkách, jako ring-bus (centrální řízení s programovatelností), ale které je pro konfiguraci RV770 efektivnější. Hub, side-port a CrossFire Každá grafická karta využívající dva čipy, potřebuje, aby oba tyto čipy měly přístup k PCIe sběrnici. Toto se řeší většinou čipem navíc (PCIe řadičem či switchem). Oba čipy se pak o PCIe sběrnici dělí. To ovšem znamená, že když grafická karty nahrává textury do paměti, musí tyto textury nahrát do pamětí obou čipů, což zabere dvojnásobnou dobu. Nový řadič je kompatibilní PCIe 2.0 a kromě klasického Crossfire rozhraní čipy spojuje tzv. side-port, který umožňuje sdílení dat mezi oběma čipy.

RV770 vs G200 Koncepty obou architektur ze velmi liší a velmi zjednodušeně by s to dalo asi popsat takto. ATI obsahuje jednodušší a méně komplexní výpočetní jednotky, kterých je ovšem v čipu umístěno mnoho a běží na základní frekvenci. Oproti tomu nvidia má daleko menší množství výpočetních jednotek, ty jsou ovšem mnohem větší a běží na vyšší frekvenci. Ze schématu je patrné, že může u RV770 v některých situacích docházet k nevytížení některých výpočetních jednotek z každé pětice. Na druhou stranu výpočetní jednotky G200 a jejích předchůdkyň nejsou čistě skalární, ale dual-issue, což znamená, že k oné samostatné SP patří ještě druhá menší SP, která se využívá pro specifické účely. V případech, kdy není těchto operací třeba, nedochází k jejímu využití. Druhým příkladem, kdy SP nvidie nejsou vytíženy, je použití double-precision při GP-GPU operacích. K těm je v případě RV770 využita celá pětice SP, zatímco SP G200 tuto funkci nepodporují a provádí ji samostatná jednotka (SP jsou pak zcela nevyužity).

Použitá literatura http://www.bit-tech.net/hardware/graphics/2008/06/24/nvidia-geforce-gtx-280-architecturereview/7 http://www.bit-tech.net/hardware/graphics/2008/09/02/ati-radeon-4850-4870-architecturereview/6 http://www.chip.cz/cs/clanky/jak-pracuji-spickove-graficke-karty.html http://www.extrahardware.cz/technologie-rv770-jak-vznikl-radeon-hd-4800 http://www.svethardware.cz/art_doc-b36402eea9fd9a5cc1257481002604f6.html http://www.svethardware.cz/art_doc-5f069f8088bc4e99c12574810025f3d4.html http://www.extrahardware.cz/geforce-gtx-280-gt200-kompromisy-stranou?page=0,2 http://www.anandtech.com/video/showdoc.aspx?i=3341&p=6 http://www.pc.sk/modules.php?name=article&what=read&v=1227038699&p=2