ABOX - Unified Memory Architecture versus PCIPetr Krenželok
Jinými slovy „Proč vyvíjet něco nového, když si to již můžete dávno koupit?“ Od doby zveřejnění základních specifikací počítačového systému ABOX a
zákaznického čipu CAIPIRINHA, diskutovala veřejnost mnohokrát jejich smysl či
nesmyslnost. Většina r těchto diskusních témat se týkala toho, proč by měla být
použita UMA, a zdali lepší řešení nepředstavuje použití standardních a
všestranně dostupných komponent.
Jednou ze skutečností, jež je často vytýkaná konceptu CAIPIRINHA spolu s UMA
architekturou, je propustnost paměti, používané pro jisté systémové funkce,
přístup procesoru a video výstupy. Kritici této technologie však extrémně
jednoduchými příklady chtějí demonstrovat případné nevýhody tohoto řešení, jako
například: „1600x 1200 bodů ve 24 bitové hloubce násobené 75 Hz představuje 432
MB/s stálého zatížení, navíc zde máme druhý video výstup, propočty velkého
množství textur pro 3D scény, vícekanálové audio, a mnohem více, což vše má
přímý vliv na snižování výkonu CPU.“ S touto argumentací se někteří uživatelé
rozhodli podpořit spíše koncept s oddělenými sběrnicemi a grafikou na bázi PCI
nebo AGP (viz dále). Jiné argumenty se snaží přesvědčit počítačovou veřejnost o
lepší ochraně budoucích investic v podobě levnějších modulárních řešení, či
snazší rozšiřitelnosti sběrnic. V následujících bodech se budeme snažit
komentovat zmíněná tvrzení, přestože tato zanechávají na našich tvářích letmý
úsměv...
1. Standardní architektura s pamětí a grafikou založenou například na bázi PCI,
má mnohem menší propustnost, než námi plánovaný systém. Rozdělením paměti zde
vzniká potřeba přenášet data z hlavni paměti do paměti grafické karty. A nyní
tři příklady:
- Procesor v PC propočítává animovanou 3D scénu. Proto musí přečíst desítky
tisíc hodnot souřadnic pro každou obrazovku, provést náročné propočty a zapsat
data zpět do hlavní paměti. Poté musí být data z hlavní paměti opět odečtena,
aby mohlo proběhnout jejich setřídění a následné odeslání 3D grafické kartě, to
vše samozřejmě skrze PCI sběrnici. Protože 3D scény bývají dosti komplexní a
grafická karta má většinou k dispozici pouze 2 až 4 MB RAM, nahrání nových
textur musí být přeneseno do paměti pro tyto textury určené, kde 3D čip grafické
karty vypočítá polygony. Jiným možným řešením je samozřejmě možnost používat
velmi jednoduché scény s texturami tak malými, aby se vešly do 1 MB paměti,
rezervované přímo na grafické kartě. Opravdové „High-end“ řešení, nemyslíte?
- Video digitizér zapisuje data svých obrázků snímaných v reálném čase do hlavní
paměti PC, protože tam se počítá s jejich editací. Abychom tato data mohli
zobrazit v podobě animovaného okna. musí být znovu nakopírována do paměti
grafické karty, tj. 25 krát za sekundu přibližně 1 MB dat, což je jinými slovy
rovno polovině možné propustnosti mnoha PCI systémů. Jaká smůla, že další
polovina je již využita video digitizérem.
- Obrazovku s rozlišením 4000 x 4000 hodů (= 48 MB) zobrazíme na grafické kartě
s rozlišením 1280 x 1024 bodů a pokusíme se jí různě posouvat (panning).
Samozřejmě že je to možné provést se standardní architekturou PC, pomineme-li
však fakt, že PCI sběrnice je zcela přetížena, protože procesor je příliš
zaměstnán přenosem potřebných dat z hlavní paměti. A nakonec - na fakt, že je
datová sběrnice zcela přetížena, můžeme s klidem zapomenout, protože i kdyby
nebyla, procesor by stejně nemohl využít její propustnost k samotným výpočtům,
jelikož je zaměstnán samotným přenosem dat.
Výčet podobných příkladů by samozřejmě mohl pokračovat dál, tu však není
zapotřebí. UMA architektura má jasné výhody, zvláště co se týče přenosu dat,
který se zde stává zbytečným, protože všechna data jsou již na svém místě, v
jednotné paměti, kam mají všechny funkční jednotky systému zajištěný přístup.
Při kombinaci UMA/DLRP mohou být obrazovková data, uložená na libovolném místě v
paměti, zobrazena na libovolném místě obrazovky, aniž by vznikla jakákoliv
potřeba využití propustnosti a CPU k jejich nakopírováni do „videopaměti“.
Stejný přístup zpracování dat se týká například i 3D souřadnic, textur, dat pro
audio, apod. Na závěr k tomuto bodu můžeme dodat snad už jen následující:
Vzhledem k dnešním, ale i budoucím standardním řešením nenabízí dobře
implementovaná UMA architektura pouze větní propustnost paměťových sběrnic, ale
rovněž silně redukuje potřebu na využití této propustnosti, čími samozřejmě
poskytuje větší výkon a více systémových zdrojů pro High-end aplikace.
2. Jednoduché propočty propustnosti počítají s konvenčním designem grafických
karet, kdy data obrázku musí být uložena na jednom místě Jednoho souvislého
bloku paměti. Proto je množství dat a hloubka barev vždy ve svém maximu, což je
koncept, který nedává žádný smysl. Pokročilá technologie jednotky DLRP čipu
CAIPIRINHA nabízí zcela odlišný koncept, kde zobrazená obrazovka nemusí být
nutně v paměti ve výše uvedeném formátu. U DLRP je vzhledem k možnosti volby
hloubky barev průtok dat mnohem menší. Jednoduchý DLRP příkaz může dát například
povel 100 bodům na jednom řádku obrazovky v příslušné barvě k jejich zobracení.
V systému, kde můžete mít 24-bitová okna jakéhokoliv tvaru a velikostí (což je
umožněno pouze díky přítomnosti čipu CAIPIRINHA), záleží jen na uživateli, zdali
si k zobrazení obrázku pozadí pracovní plochy zvolí 24-hitovou hloubku, kde
samozřejmě dojde k využití zdrojů paměti a propustnosti, nebo si zvolí pozadí s
omezenou hloubkou barev, čímž naopak šetří systémové zdroje. Zobrazení řádku o
velikostí 1600 bodů by mohlo, hrubě přeneseno do lidské řeči, vypadat jako
následující sekvence DLRP. {
Zobraz 312 bodů RGBA 128,128,256,0
;Toto je pozadí
Zobraz 10 bodů pomocí 1 Bajtu počínaje adresou v cache $xxxxxxxx
;Zde dojde k zobrazení jednoho řádku pomocí posuvné lišty z cache
Zobraz 700 bodů RGBA pomocí 4 Bajtů počínaje adresou $yyyyyyyy
;700 bodů 24 bitového obrázku
Zobraz 350 bodů použitím l Bajtu od adresy $zzzzzzzz
;Zde se jedná o okno v popředí obrázku, např. ovládací panel s paletou 256 barev
Zobraz 312 hodů RGBA 128,128,256,0
;Dokončení pozadí k pravému okraji obrazovky
} Na tomto příkladu vidíme, že použitím DLRP potřebujeme k zobrazení daného
řádku 3150 bajtů plus několik instrukcí z hlavní paměti, zatímco u „tradičního“
24 hitového, 1600 bodů dlouhého řádku to bude 64000 bajtů. Při zobrazeni celé
obrazovky se tedy jedná o redukci propustnosti ze 432 MB/s na 213 MB/s. Jak jsme
názorně předvedli na tomto příkladu, jež je vlastně součástí každodenních
aplikací, inteligentním programováním a konfigurací v kombinaci s UMA a DLRP
dosáhneme lepšího využití systémových zdrojů. A toto je, jak sami věříme,
preferovaný koncept v dnešním světě marnivých GUI systémů, které často svými
nároky kladou požadavky na vývoj nových generací procesorů.
3. Mnoho kritiků ABOXu nebo UMA architektury čipu CAIPIRINHA apeluje na
High-end požadavky v oblasti grafiky a celkového výkonu systému. Přestože nevědí
nic o konceptu tohoto čipu, očekávají zde různá omezení, a pak jej srovnávají s
výkonností současných grafických karet, postavených na bázi standardních
komponent. Velmi rádi pro srovnání používají příklad komplexního 3D zobrazení, s
použitím nejvyšších rozlišení a občerstvovacích frekvencí. Pominete-li cenu
těchto standardů, nezbývá než dodat, že zapomínají na několik důležitých
skutečností:
- Dnešní PCI grafické karty již nevyhovují požadavkům na multimedia a 3D
aplikace, navíc tolik vychvalované PCI sběrnice jsou již u konce se svou
propustností. To samozřejmě až tak moc nevadí, protože průmysl již má v rukou
řešení v podobě AGP s téměř 400 MB/s pro skutečně rychlé 3D aplikace. S tímto
řešením však vzniká požadavek na nové grafické karty. Ale nejen to, samozřejmé
budete potřebovat nový motherboard s podporou pro AGP. Bude skutečně zajímavé,
když definicí marketingových strategií během jednoho či dvou let dojdeme k
hranicím AGP kdo se odváži propagovat novou a výkonnější generaci softwaru,
která pak bude mít nepředvídatelné požadavky na novou generaci hardwaru.
- Současné 3D grafické karty dostupné za přijatelnou cenu, jsou zřídkakdy
schopné znázornit větší rozlišení než 1280 x 1024 bodů v 24 bitové hloubce
(včetně nových karet na bázi EDORAM). K dosažení lepších výsledků si musíte
zakoupit High-end grafickou kartu s VRAM nebo WRAM. Toto jsou jediné karty,
které se mohou alespoň mírně přirovnat k systému ABOXu, navíc pouze co se
rozlišení týče, ale rozhodně ne ve vztahu k ostatním vlastnostem.
- Mnoho grafických karet osazených čipy předních světových výrobců již nabízí
rychlou 3D grafiku, ovšem pouze použitím nižších rozlišení a omezené hloubky
barev. Jinými slovy: mnoho 3D enginů nevyužívá nejvyšší rozlišení, které jim
čipy poskytují, ale většinou pouze 800 x 600 bodů v 16 bitové hloubce. Některé
3D enginy dokonce vůbec neumí využít 24 bitovou hloubku. CAIPIRINHA může
jednoduše pokrýt tato rozlišení při 150 Hz občerstvovací frekvenci, přičemž
dojde pouze k méně než 15% využití propustnosti. Ve skutečnosti to ještě pořád
nemá co do činěni s REAL 3D grafikou (totéž se týká elegantně vypadajících
konzoli), pro tu ještě většina dnešních systémů není dostatečně vybavená.
- Pro realističtější pohled na věc byste měli brát na vědomí omezení současných
systémů. Často zmiňovaný teoretický vrchol výkonnosti standardních systémů je
daleko vzdálenější realitě, než design čipu CAIPIRINHA od své maximální
teoretické výkonnosti.
Znovu musíme připomenout, že dokonce i průmysl považuje PCI sběrnice za
zastaralé. Tyto budou postupně nahrazovány technologií AGP ať už v PowerPC či
x86 systémech, s urychlovacím faktorem 3. Ale to ještě pořád nepřekoná hranice a
ani se nepřiblíží výkonnosti rychlé UMA architektury nebo CAIPIRINHY.
4. Jedním z argumentů proti UMA architektuře bylo tvrzení, že procesor by mohl
mít omezený přístup k paměti. Při rychlosti sběrnice 50 MHz násobené 8 bajty
(64-bitová sběrnice) je odhadovaná propustnost 400 MB/s. U systému s
CAIPIRINHOU, kde může být procesorová sběrnice taktovaná na 100 MHz (je pravdou,
že zatím PowerPC procesory tuto výkonnost nenabízí), můžeme dokonce propustnost
odhadnout na 800 MB/s. Při porovnání s odhadovanou propustností samotné UMA
paměti, jež bylo stanovena na 1600 MB/s, je jasné, že v praxi této výkonnosti
nemůžeme nikdy dosáhnout. Tento fakt se ale bohužel týká i propustností 400 MB/s
a 800 MB/s, protože i doposud nejrychlejší PowerPC procesory nemohou u
příslušných aplikací zvládnout tak velký průtok dat. U ABOXu bude samozřejmě
procesor od většiny přenosových prací osvobozen, protože ty za něj bude provádět
CAIPIRINHA.
Dříve než bychom se měli pouštět do srovnávání řadičů PC systémů s UMA
architekturou čipu CAIPIRINHA a odvolávat se na výsledky testů různých
nezávislých časopisů, měli bychom si uvědomit, že dokonce u nejrychlejších
Pentií a Pentií Pro je aktuální přístup do hlavní paměti menší než 100 MB/s. A
dokonce i standardní řadič Motorola MPC 106 (kombinace paměti, cache a řadiče
PCI sběrnice) s 60 ns pamětí RAM a 64bitovou datovou sběrnicí nepřesahuje
maximum 133 MB/s (což je rovno výkonnosti nulového čekacího stavu řadiče RAM,
taktovaného na 16 MHz), a v praxi bude samozřejmě daleko pomalejší. I kdyby
PowerPC procesory díky velkému zatížení systému mohly od CAIPIRINHY přijímat
data rychlostí pouze 200-300 MB/s, stále ještě tento systém po všech stránkách
překoná všechny dnešní standardní koncepty, včetně těch, které budou k dispozici
v roce 1997.
5. Dalším argumentem proti vysoké integraci, kterou vyžaduje koncept čipu
CAIPIRINHA, je možnost jeho rozšíření. Lidé velmi rádi kritizují fakt, že řadič
(včetně grafiky a zvuku)je integrován přímo do motherboardu, a není proto
zaměnitelný skrze standardní sběrnicový systém. Toto řešení není zatím bohužel
možné, protože v současné době neexistuje sběrnicový systém, který by nám
poskytl dostatečnou výkonnost. Kromě toho zde existuje fakt, že CAIPIRINHA,
která by měla být dokončena ještě v roce 1997, bude schopna využívat všechny
dostupné technologie až na hranici jejich možností, jako například 100 MHz SDRAM
paměti, které jsou k dispozici již téměř dva roky, ale teprve nyní se začínají
používat, nebo 100 MHz sběrnice CPU, jež žádný procesor v současné době
nevyužije na plný výkon. Díky svému designu bude CAIPIRINHA poskytovat léta
maximální možnou výkonnost. Toto rozhodně nemůžeme očekávat od mnoha současných
modulárních systémů. Pokud si dnes někdo například zakoupí PCI grafickou kartu,
investuje do rychle stárnoucí technologie, přičemž nesmíme zapomínat na
skutečnost, že PCI bude nahrazeno novou generací AGP technologie. Uvědomte si,
že budete muset vymanit grafickou kartu a motherboard včetně všech řadičů.
Přesto tato nová generace motherboardů s AGP pouze posouvá hranici výkonnosti ze
132 MB/s na přibližně 400 MB/s, přičemž se bude stále potýkat s omezeními v
podobě rozšiřitelnosti. Jiné koncepty, kde je procesor spolu s cache a RAM
umístěn na samostatné kartě, stojí při upgradu uživatele ještě více, protože
většinou musí počítat s koupí nového procesoru, cache a systémového řadiče,
včetně nových konektorů pro cache a paměť. Smysl těchto doplatků je více než
diskutabilní, protože pokud budete chtít například zvýšit výkon svého systému
přechodem na dokonalejší technologii cache a paměti (SDRAM), budete muset stejně
vyměnit celé cache a paměťové moduly. Jak vidíte. ještě stále není zdaleka
jasné, do jaké míry budou modulární systémy v budoucnosti dostačující a
moderní...
Sestaveno s pomocí materiálů Phase5. Vytlačiť článok
Pozn.: články boli naskenované ako text a preto obsahujú aj zopár chýb. Taktiež neručíme za zdrojové kódy (Asm, C, Arexx, AmigaGuide, Html) a odkazy na web. Dúfame, že napriek tomu vám táto databáza dobre poslúži.
Žiadna časť nesmie byť reprodukovaná alebo inak šírená bez písomného povolenia vydavatela © ATLANTIDA Publishing
none
|