Technologie nové generace
Kapitoly článků
Nyní si popíšeme technologické novinky této generace. Navazovat přitom budeme na dřívější články, které na našem serveru rozebíraly technologie obsažené v GPU R520 alias Radeonech X1800, GPU R580 alias Radeonech X1900, ale také třeba obsáhlý článek popisující technologie skrývající se uvnitř unifikovaných shaderů, nových DirectX 10, 10.1 a WDDM 2.0/2.1 ve Windows Vista. Stejně tak v rámci popisu nové generace AVIVO HD budeme navazovat na dřívější článek popisující původní AVIVO a uvedení shodně pojmenované aplikace a testy v HQV Benchmarku u příležitosti vydání Catalystů 5.13. Volitelným „studijním materiálem pro masochisty“ (:-) je pak článek o ochranách HD videa ve Windows Vista.
Unifikovaná architektura
Stejně jako řada GeForce 8 přináší i nové Radeony HD 2000 unifikovanou architekturu, podporu Shader Modelu 4.0, DirectX 10, OpenGL 2.1 a s tím související možnosti dekódování HD videa s H.264/VC1 kompresí (tedy Blu-ray/HD-DVD) a provádění rozličných GPGPU výpočtů, v čele s fyzikálními výpočty konkurujícími specializované kartě Ageia PhysX.
Stream Processing Units
Architektura GPU R600 a souvisejících je odvozena od skvělého a ve své době nepochybně nejlepšího dostupného designu GPU ATI Xenos, které tepe v útrobách Xboxu 360. Oproti R580/R580+ z Radeonů X1900/X1950 je znatelně vylepšen Ultra-Threaded Dispatch Processor, který má na starosti rozhazování jednotlivých shaderových výpočtů mezi stream processing jednotky (alias dřívější „shader jednotky“), kterých má R600 rovných 320. Nová implementace zvládá dle AMD současně zpracovávat tisíce elementárních výpočetních vláken. Této informaci se dá bez potíží věřit, neboť právě Dispatch Procesor je jednou z klíčových částí architektury, která by při neoptimálním návrhu mohla být žábou na prameni výkonu GPU.
Když už jsme u těch stream processing jednotek, pak si je popišme. I ony totiž prošly dalším krokem evolučního vývoje a oproti shader jednotkám v R580 jsou jinak navrženy.
Na prvním obrázku vidíme vývoj architektury shader jednotek od dob původních Radeonů. Tehdy byly programátorům k dispozici čtyři vektorové komponenty s výkonem 1 instrukce za takt. Radeony 9600 a výše včetně řady X1000 implementovaly již vektorové + skalární výpočetní komponenty v konfiguraci 3 + 1, nebo 4 + 1. Zvládaly již 2 instrukce za takt. Řada HD 2000 nabízí superskalární architekturu skládající se z 5 komponent zvládající tak 5 instrukcí za takt.
Pokud bychom to tedy chtěli pojmenovat nepřesnou terminologií, pak můžeme říci, že zatímco R580/R580+ disponuje 48 vector + 48 scalar jednotkami, R600 nabízí 320 stream processing jednotek, které jsou po pěti kusech nakonfigurovány do 64 „větších bloků“.
Co se však týče typu proveditelných výpočtů, narozdíl od předchozí generace již nerozlišujeme mezi pixel a vertex shadery, shadery jsou unifikované a zvládají jakýkoliv typ shaderů, včetně nově v DirectX 10 zahrnutých geometry shaderů (blíže o nich v úvodu stránky zmiňovaný článek).