MMX, SSE, NetBurst, Hyperthreading, Dualcore - technologie, které výrobce
procesorů dokáže proměnit v marketingový nástroj. Posledním trendovým slůvkem
je právě Dualcore: označení dvoujádrových procesorů, které spojuje technologii
a marketing.
Podíváme-li se na celou problematiku s větším odstupem, je jasné, že současné
dvoujádrové procesory jsou stejnou měrou technologickou evolucí i cestou z
nouze. Či z krize, které výrobci procesorů (především Intel) čelí, neboť se
jejich současné architektury přiblížily takzvanému frekvenčnímu stropu, tedy
maximální pracovní frekvenci, které lze dosáhnout se současnými technologiemi.
Došlo k tomu dříve, než se původně předpokládalo. Budoucí architektury sice
umožní dosahovat opět vyšších frekvencí, jejich zvyšování bude ale stále
technicky náročnější a výrobci procesorů proto hledají jiné cesty, jak výkon
zvýšit. Sloučení dvou (a v budoucnu jistě i více) procesorových jader (tedy de
facto dvou procesorů - jádro je vlastní křemíková destička, obsahující veškeré
logické obvody procesoru, zatímco jako procesor se obvykle označuje kompletní
"balení" v keramickém či plastovém pouzdře) je bezpochyby legitimní cestou.
Nové postupy s sebou ale často přinášejí nemalé komplikace.
Dvou či vícejádrové procesory jsou na první pohled jednoduchou cestou k
dosažení vyššího výkonu. Až doposud design nového - výkonnějšího - CPU spočíval
ve vylepšení či přidání výpočetních (exekučních) jednotek, vylepšení jednotky
pro odhad větvení, zvětšení vyrovnávací paměti a současného zvýšení pracovní
frekvence. Poté byly v průběhu několika (zhruba pěti) následujících let
vylepšovány výrobní procesy, zmenšována struktura a prováděny drobné
modifikace, což umožnilo zvyšování pracovní frekvence a tím i výkonu.
Dvoujádrový procesor umožňuje poměrně výrazné zvýšení výpočetního výkonu
prostým spojením dvou procesorů do jednoho "balení" - to sice vyžaduje jisté
zásahy do designu jádra procesoru, jedná se ale o relativně "drobné" úpravy s
relativně nízkými náklady na vývoj a výzkum.
Uvedení dvoujádrových procesorů ale není, jak jsme již naznačili, jen trikem
Intelu či AMD, který by měl jednoduše vyřešit otázku zvyšování výkonu. Pentium
D a Athlon 64 X2 jsou ve skutečnosti prvním krokem směrem k budoucím generacím
procesorů, které nebudou obsahovat dvě či tři, ale časem patrně i desítky
jader. Na rozdíl od současných vícejádrových procesorů, které jsou složeny ze
dvou identických CPU, se ale bude jednat o kombinaci různých specializovaných
jader (dalo by se říci specializovaných procesorů a koprocesorů), které budou
vzájemně spolupracovat - či přesněji jimž budou aplikace a operační systém
zadávat specifické úlohy. Prvním čipem tohoto typu je Cell, který společnosti
IBM, Sony a Toshiba vyvinuly pro PlayStation3 (a budoucí spotřební
elektroniku). Ten obsahuje vedle jádra PowerPC také specializovaná vektorová
jádra. Tato změna půjde ruku v ruce s vývojem aplikací a operačních systémů.
Hardwarová a softwarová architektura PC byla totiž původně navržena pro sériové
(postupné) zpracování úloh. V průběhu devadesátých let se sice objevily
víceprocesorové systémy s PC architekturou, schopné zpracovat úlohy paralelně,
prakticky výhradně se ale jednalo o řešení určená pro servery či pracovní
stanice. S příchodem Windows 2000 se možnost využít tzv. "multithreading"
otevřela i běžným uživatelům, ale do nástupu hyperthreadingu, který lze označit
za virtuální formu multithreadingu, zůstalo obvykle pouze u potenciálu
operačního systému, neboť aplikace se až na výjimky možnosti rozdělit
zpracovávané úlohy na více "vláken" nepřizpůsobily.
S příchodem dvoujádrových procesorů tak jsou stolní (a v příštím roce přibudou
i mobilní) počítače schopny skutečného multithreadingu - tedy paralelního
zpracování dvou úloh (či více - záleží na počtu vláken, threadů, které může
procesor současně provádět) současně bez viditelného zpomalení, spíše než
zásadního urychlení PC. V mnoha případech byste totiž přechod z jedno na
dvoujádrový procesor patrně nezaznamenali. Jednoduše proto, že většina
současných programů a aplikací nedokáže multithreading využít - mezi výjimky
patří zejména profesionální programy pro práci s grafikou (Photoshop) a
vizualizaci (3D Studio, Maya, Lightwave). Procesory se dvěma jádry nabídnou
vyšší (respektive nesnížený) výkon především v případě, že pracujete s několika
aplikacemi současně. Dvoujádrové procesory tedy nejsou (nebo přinejmenším
zpočátku nebudou) ideální investicí pro každého. Je velmi pravděpodobné, že
stále větší počet programů bude časem multithreading podporovat a není pochyb o
tom, že budoucí operační systémy - jmenovitě Windows Longhorn, plánované na
konec příštího roku - budou pro využití dvou či vícejádrových procesorů
navrženy a pro jejich optimální běh budou patrně doporučeny dvoujádrové
procesory. Můžeme pochopitelně diskutovat o tom, zda v tomto případě Intel a
AMD nahrávají do rukou Microsoftu či naopak, jen stěží na tom ale něco změníme
(ostatně tato vzájemná "výpomoc" při prodeji nových procesorů a operačních
systémů má dlouholetou tradici).
Nepatříte-li do některé specifické skupiny uživatelů, která intenzivně pracuje
s aplikacemi využívajícími multithreading, případně nepracujete-li často s
velký počtem aplikací současně, není důvod s koupí dvoujádrového procesoru před
uvedením Windows Longhorn spěchat. To platí zejména pro PC hráče, jimž nemají
dvoujádrové procesory opravdu co nabídnout, což ostatně přiznává kupříkladu i
AMD (podle tohoto výrobce budou dvoujádrové procesory pro hráče atraktivní až
koncem roku 2006).
Když dva dělají totéž.
Pojďme se nyní podívat blíže na rozdíly v architektuře dvoujádrových procesorů
AMD a Intel. Intel zvolil nejjednodušší způsob spolupráce dvou jader: vložil do
pouzdra dva procesory, které vzájemně komunikují pomocí sběrnice FSB. Takové
řešení klade minimální nároky na výzkum a vývoj, nutnost vést komunikaci přes
základní desku ale způsobila, že pro nová Pentia D jsou třeba i nové základní
desky. Ani samotná volba FSB není ideální - jedná se o typický příklad úzkého
hrdla, které částečně omezuje efektivitu spolupráce obou jader. Konečně
existence na jedné FSB znamená, že obě jádra musí pracovat na stejných
frekvencích, což omezuje možnosti úspor energie.
Postup, který zvolilo AMD pro Athlon 64 X2, je odlišný a vychází zejména z
výhod architektury běžného Athlonu 64. Jádra jsou propojena přímo uvnitř
procesoru pomocí tzv. rozhraní systémových požadavků (systém request interface)
a křížového přepínače, který komunikuje s paměťovým řadičem a rozhraním
hypertransport - obě tato rozhraní jsou integrována přímo v procesoru. Veškerá
komunikace mezi oběma jádry tak probíhá uvnitř procesoru - dvoujádrové
procesory AMD díky tomu nepotřebují nové základní desky, postačí update BIOSu
na prakticky libovolné desce s paticí S939. Je velmi pravděpodobné, že AMD s
možností vícejádrových procesorů počítalo už při původním návrhu jádra K8.
Vítejte v realitě
Athlon 64 X2 ani Pentium D ale rozhodně nemohou nabídnout dvojnásobek výkonu
procesorů s jedním jádrem na stejné frekvenci. To je dáno jednak nedostatečně
optimalizovanými aplikacemi, ale i skutečností, že obě jádra musí ve všech
případech sdílet dostupné zdroje jako je systémová sběrnice či RAM a periferie.
Rozdílům ve výkonu obou řešení se podrobně věnoval kolega Petr Matuška v
"praktické" části tohoto článku, v souvislosti s nimi ale stojí za zmínku velmi
odlišná cenová politika AMD a Intelu. Zatímco dvoujádrová Pentia D jsou
dostupná v nižších frekvencích a adekvátně nízkých cenách (od cca 5 do 12 tisíc
Kč), Athlon 64 X2 je nabízen jako luxusní zboží od cca 12 do 24 tisíc - nelze
se zbavit dojmu, že AMD tak reguluje případnou vysokou poptávku po vlastních
dvoujádrových procesorech, neboť současné výrobní kapacity by patrně nestačily
uspokojit poptávku v případě výrazně nižších cen.
Nejpodstatnější ale je, zda dvoujádrový procesor vůbec dokážete využít. Pakliže
pracujete s mnoha programy současně či s profesionálními programy pro
vizualizaci, odpověď nejspíše zní ANO. Naopak používáte-li spíše kancelářské
aplikace či hry, je v současné době investice do dvoujádrového procesoru
prakticky zbytečná.
DualCore AMD v praxi
Po teoretické, či spíše technologické části vás můžeme seznámit s praktickými
testy nových procesorů AMD. K dispozici jsme měli dvoujádrový procesor AMD
Athlon 64 X2 4800+, usazený do patice Socket 939. Procesor pracoval na
frekvenci 2 400 MHz a obsahoval ke každému jádru přidělenou cache druhé úrovně
o velikosti 1 MB. Svými parametry přesně odpovídá jednojádrovému procesoru AMD
Athlon 64 4000+, který jsme měli v době testu také k dispozici. Dostali jsme
tak možnost porovnat výkonnostní rozdíl, který přináší druhé jádro procesoru za
stejných podmínek. Ty v testu zajišťovala základní deska Asus A8N-SLI s
upraveným BIOSem, podporujícím dvoujádrové procesory AMD. Motherboard využívá
služeb čipové sady NVIDIA nForce4 SLI a doprovázen byl dvojicí operačních
pamětí Corsair s časováním 2-5-2-3-2, zapojených ve 128bitovém režimu přístupu
do paměti, nazývaného také DualDDR. Každý modul měl kapacitu 512 MB a pracoval
na frekvenci 400 MHz. V grafickém slotu PCI Express x16 byla osazena karta
NVIDIA GeForce 6800 Ultra s 256 MB paměti GDDR3. K ukládání dat sloužil pevný
disk Western Digital Raptor, připojený k Serial ATA II řadiči, disponující
kapacitou 74 GB, s 10 000 otáčkami za minutu.
Operační systém
Na testovacím počítači byl kromě 32bitové anglické verze Microsoft Windows XP
Professional s nainstalovaným Service Pack 2 také 64bitový operační systém
Microsoft Windows XP 64-Bit Professional Edition. Testy jsme provedli na obou
systémech za účelem porovnání kompatibility a výkonového přírůstku/úbytku v
současné době, kdy ještě nejsou programy z velké části optimalizované pro
provoz pod 64bitovým systémem.
SiSoft Sandra
Program společnosti SiSoft s názvem Sandra 2005 měl v našich testech za úkol
zjistit propustnost systému z hlediska operačních pamětí a celkového systému,
do kterého se započítává průchodnost pamětí, cache procesoru a rychlost
systémové sběrnice. Použitá verze programu SiSoft Sandra Lite 2005.SR1 (10.50)
podporovala jak 32bitové MS Windows XP, tak i 64bitovou verzi tohoto operačního
systému. První údaj v tabulce udává paměťovou propustnost systému, druhý
propustnost celého systému včetně cache procesoru. V porovnání s předchozími
testy jsou obě hodnoty vyšší, což bylo způsobené zejména optimalizací BIOSu.
Rozdíl v propustnosti přinesla podpora 64 bitů, kde v testu Sandra Chipset
dosáhl systém o necelých 500 bodů více než v 32bitovém systému. V porovnání
obou procesorů byly výsledné rozdíly zanedbatelné, pod hranicí statistické
chyby.
Aida32
Programem Aida32 jsme testovali průchodnost pamětí. I když se tento software
již nevyvíjí a poslední verze 3.93 je již několik měsíců stará, přesto velmi
dobře vypovídá o propustnosti pamětí. Výsledky se nijak zásadně nelišily od
hodnot naměřených s jednojádrovým a dvoujádrovým procesorem a v obecné rovině
nevybočovaly nad hodnoty dosahované velmi dobře vyladěným systémem.
3DMark 03 a 05
Sérii syntetických testů jsme zahájily herními benchmarky od společnosti
FutureMark: 3DMark03 ve verzi 3.6.0 a 3DMark05 ve verzi 1.2.0. Dosažené
výsledky u 3DMark03 dávají jasně najevo, že v herních aplikacích, které nejsou
optimalizovány pro více jader, dualcore procesor těží pouze ze své výpočetní
síly - frekvence a paměti cache, stejně jako jeho jednojádrový kolega. Rozdíly
jsou v tomto případě minimální. Co se týká použití testů v 64bitovém operačním
systému, zde se potvrdilo, že výkon je závislý na optimalizaci programu a
použitých ovladačů zařízení. Výsledky byly o necelých 900 bodů nižší než u
testů na 32bitovém operačním systému. U novějšího benchmarku 3DMark05 se
jednalo dokonce o ztrátu výkonu, nepřekračující ovšem statistickou chybu
měření. Znatelný byl opět pokles výkonu při použití 64bitového operačního
systému.
DVDShrink
Ryze praktický test čekal procesory v testu pomocí programu DVDShrink 3.2.0.15,
který měl za úkol převést obsah DVD Videa na předem definovaný formát.
Výsledkem je čas, za který se to systému povedlo. V tomto testu se poprvé
projevila síla dvoujádrového procesoru AMD Athlon 64 X2, který zvládl
komprimaci téměř dvakrát rychleji než procesor AMD Athlon 64 4000+ s jedním
jádrem. Hodnota 9 minut a 7 sekund je dokonce o tři desítky sekund nižší, než
zvládl v minulém čísle testovaný procesor Intel Pentium Extreme Edition 840.
Stejný test provedený v 64bitové verzi operačního systému byl o několik sekund
pomalejší.
Doom3
Nezapomněli jsme ani na herní benchmarky. Prvním z nich byl reálný test v
aktuální hře Doom3 verze 1.1, která využívá k renderování OpenGL. Zvolili jsme
standardní nastavení, používané pro testy - rozlišení 1 024 x 768 obrazových
bodů, nejnižší detaily a vypnuté celoobrazovkové vyhlazování. Testovali jsme
pomocí přednastavené sekvence DEMO1. Při tomto nastavení dosáhl dvoujádrový
procesor hranice 120 snímků za sekundu, stejného výsledku ale dosáhl i shodně
taktovaný procesor AMD Athlon 64 4000+. Výsledek v MS Windows XP 64-Bit
Professional Edition byl shodně o čtyři snímky za sekundu nižší než u 32bitové
verze, což je dáno především neoptimalizovanými ovladači.
Half-Life 2
Druhou hru, pomocí níž jsme měli možnost otestovat výkon nového procesoru, byl
Half-Life2 od společnosti Sierra. Hra využívá moderního rozhraní DirectX 9.0b.
Testy probíhaly na sadě předurčených sekvencí v rozlišení 1 024 x 768 a se
standardním nastavením, bez zapnutého celoobrazovkového vyhlazování. Výsledkem
je hodnota, signalizující průměrný počet snímků za sekundu. Rozdíly byly opět
jako v předchozím testu znát pouze u použitého operačního systému, mezi
procesory jsme žádné nezaznamenali.
SysMark 2004
Test postavený na reálných aplikacích BaPCo SysMark 2004 s instalovaným Patchem
2 velmi dobře prověřil výkonnostní potenciál nového procesoru AMD Athlon 64 X2
4800+. Celkové dosažené skóre 277 bodů je hodnota, která překonala všechny
předchozí systémy. Zde byl asi přínos více jader v jednom procesoru vidět
nejvíce, i navzdory tomu, že tento test není konkrétně optimalizován pro
dvoujádrové procesory, pouze pro HyperThreading u procesorů Intel Pentium 4.
Výsledek stejně taktovaného jednojádrového procesoru byl 217 bodů, což je
opravdu znatelný rozdíl. V tabulce jsou uvedeny i hodnoty dílčích částí
Internet Content Creation a Office Produktivity. Pro porovnání s testem
dvoujádrového procesoru Intel v minulém čísle uvádíme ve speciální tabulce i
hodnoty SysMarku 2004 v rozlišení 1 280 x 1 024 obrazových bodů.
Lame 3.96.1
Jako poslední je uveden test, při kterém jsme porovnali přínos druhého jádra v
procesoru, a to díky dvěma programům DVDShrink a Lame. První měl za úkol
převést předem stanoveným způsobem DVD Video, druhý program pak převáděl soubor
WAV o velikosti 810 MB a s délkou nahrávky 78 minut a 26 sekund do formátu MP3,
definovaného tímto příkazem - lame -h -b 192 -m s -V 5 - priority 4 test.wav
test.mp3. Měřili jsme opět výsledky s oběma procesory a v obou operačních
systémech. A jak to dopadlo? Dvoujádrový procesor AMD zvládl komprimaci videa
téměř o polovinu rychleji než jednojaderný procesor, převod do formátu MP3
naproti tomu probíhal téměř stejně rychle díky chybějící podpoře více jader.
Zajímavých výsledků jsme ovšem dosáhli při spuštění obou těchto programů
najednou, což odpovídá například komprimaci DVD Videa. Zde má jednoznačnou
výhodu procesor se dvěma jádry. Navýšení rychlosti je téměř 100procentní.
Závěrečné shrnutí
Jak je uvedeno v technologické části článku, dvoujádrové procesory AMD Athlon
64 X2 jsou vnitřně navrženy lépe než jejich protivníci Intel Pentium Etreme
Edition 840 a Intel Pentium D 840. Nespornou výhodou je také fakt, že nejvyšší
dvoujádrový model má stejné parametry (frekvence 2 400 MHz a velikost paměti L2
cache 1 MB) jako v současné době druhý nejrychlejší procesor společnosti AMD
Athlon 64 4000+. Rychlejší je pouze exkluzivní verze FX-55 s frekvencí 2 600
MHz a 1 MB vyrovnávací paměti druhé úrovně.
V testech nový procesor předvedl, že v aplikacích, které nejsou optimalizovány
pro práci více jader, pracuje minimálně stejně rychle jako model 4000+. V
porovnání s maximální frekvencí procesoru Intel, která je nyní 3 800 MHz,
pracují dvoujádrové procesory Intel na frekvenci
3 200 MHz a tudíž podávají v porovnání s tímto procesorem u neoptimalizovaných
aplikací nižší výkon. Mezi tyto aplikace patří především počítačové hry, které
nedokáží využít druhého jádra procesoru, což ostatně potvrdily i naše testy.
Co se týče výkonu samotného procesoru, je opravdu špičkový. Ovšem s poměrem
výkonu a ceny je to již o trochu horší - 1 001 dolarů za nejvýkonnější procesor
AMD Athlon 64 X2 4800+ je opravdu pouze pro několik vybraných jedinců. Na
druhou stranu je potřeba zmínit fakt, že k pořízení nového procesoru AMD nebude
potřeba kupovat novou základní desku, paměti ani napájecí zdroj, což u Intelu
nutné je.
S postupem času se využití dvou a vícejaderných procesorů bude rozšiřovat, v
současné době ale využije jejich plný potencionál pouze několik málo programů.
To se ale velmi rychle může změnit.