Pohled na systém, multiprocessing a procesory G3
Tradiční folklór říká, že pro libovolně výkonný počítač se vždy
najde taková aplikace, pro kterou bude daný počítač pomalý. To je
samozřejmě pravda, i když převážná většina uživatelů, stěžujících
si na nedostatečný výkon, vlastně výkonem počítače plýtvá
používáním zbytečně náročného softwaru (dopis napíšete stejně
rychle na Classicu jako na PowerMacu G3). Pro všechny, pro které
je výkon počítače modla, je zde následující článek srovnávající
různé cesty ke zvýšení výkonu. Zaměříme se v něm především
na porovnání nových procesorů G3 s víceprocesorovými systémy,
s úvodní zastávkou u systémového softwaru.
Úvodem je třeba říci, že testování výkonu počítačů pouze pomocí
benchmarkových aplikací, jako je dnes asi nejznámější MacBench,
je ošidné, protože jsou testovány jen individuální komponenty
a výkon celého systému pak může být dosti odlišný. Z tohoto
důvodu jsme se kromě tradičního srovnání MacBench 4.0 výsledků
podívali i na "reálné" využití počítače, tj. na zcela konkrétní
činnosti a aplikace.
Systém
Systémový software představuje rozhraní mezi hardwarem počítače
a aplikačním softwarem. Jeho služeb tedy využívají všechny
aplikace, a tak přirozeně optimalizace Systému dokáže celkově
zvednout výkon počítače i bez hardwarových úprav. Než se tedy
podíváme na srovnání výkonu různých procesorových sestav,
zastavíme se u optimalizace Systému, kterou si může za minimální
cenu udělat každý.
Při testu jsme srovnávali tři verze systémového softwaru:
Systém 7.5.3, jako zástupce starší generace, Mac OS 8.0, jako
poslední větší zlom v systémovém softwaru, a Mac OS 8.1, jako
poslední optimalizovanou verzi. Protože výsledky testu jsou
přinejmenším zajímavé, určitě nebude od věci je trochu
komentovat.
První výrazný výkonnostní skok se projevil při přechodu ze
Systému 7.5.3 na Mac OS 8.0, kdy MacBench 4.0 oznámil 16% zvýšení
rychlosti procesoru (skutečně jsem s procesorem nehýbal). Důvod
je prostý: rutiny Mac OS 8.0, které jsou volány v MacBench, jsou
více optimalizovány pro procesor PowerPC, takže jejich provádění
je rychlejší, což se ve výsledku testu projevilo jako rychlejší
procesor. Všechny aplikace používající tyto rutiny tedy budou
urychleny, což pro uživatele znamená jediné: máte-li PowerPC,
přejděte na Mac OS 8.0. Druhý výrazný skok lze pozorovat
v operacích s plovoucí desetinou čárkou (matematické výpočty) při
přechodu na Mac OS 8.1. Apple toto urychlení v Mac OS 8.1 avizoval
s tím, že do něj zakomponoval novou knihovnu matematických
funkcí. Ještě výraznější nárůst rychlosti FPU (v závislosti na
systému 20-60 %) ale můžete dosáhnou instalací knihovny MotoLib
firmy Motorola do libovolné verze Systému. Rychlost FPU se
nejvíce projeví v aplikacích, které něco počítají (3D grafika
a spol.), i když příznivou odezvu najde i jinde.
S výsledky MacBench 4.0 trochu koliduje srovnání reálného
výkonu při běžných činnostech, jako je kopírování, vyhledávání na
disku a spouštění aplikací. Je třeba si ale uvědomit, že za
drobným zpomalením u novějších verzí Systému stojí větší režie
nutná pro pokročilejší funkce (v Mac OS 8.x například kopírování
souborů nepřeruší ostatní aktivity). Testy také ukázaly, že Mac OS
8.1 skutečně optimalizuje běžné funkce Mac OS 8.0 a vyplatí se
proto na něj upgradovat. Zajímavé zjištění bylo, že vlastnost ry
chlejšího opakovaného spuštění aplikace, která byla prezentována
jako novinka u Mac OS 8.1, lze pozorovat i u předchozích verzí.
Multiprocessing
Využití více procesorů je jeden ze způsobů, jak dosáhnout vyššího
výkonu bez nutnosti kupovat nejrychlejší a tedy nejdražší
procesory. Časem se použití více procesorů možná stane jediným
způsobem, jak zvyšovat výkon počítače, protože rychlost
jednotlivých procesorů přece nemůže růst neomezeně (počet
procesorů v podstatě ano).
Do macovského světa uvedla víceprocesorové systémy firma
DayStar Digital, která přišla s architekturou nPOWER využitou ve
vlastních čtyř- a dvouprocesorových počítačích Genesis. Karty
s více procesory lze instalovat i do běžných upgradovatelných
PowerMaců (od PowerMaca 7300 výše), a tak vlastní víceprocesorové
stroje časem nabídl i Power Computing a Apple. Ještě před nimi
ale přišel s hardwarovou implementací dvou-procesorového Maca
UMAX ve svých modelech Pulsar. Vzhledem k tomu, jak Apple minulý
r ok zatočil s klonaři, je dnes jediným běžně dostupným
víceprocesorovým Macem právě Pulsar (Power Computing zcela
opustil macovský trh, DayStar prodal zbylé zásoby počítačů další
firmě a nabízí víceprocesorové upgrady, Apple se soustředí na
G3).
Využití více procesorů je v Mac OS trochu problematické,
protože tento systém není na víceprocesorovou architekturu
stavěn. DayStar společně s Applem sice vyvinul systémové doplňky,
které umožňují využití více procesorů, aplikace pro ně ale musí
být speciálně uzpůsobeny. Protože k symetrickému multiprocessingu
(viz vložený článek) má tato architektura daleko, může být
instalace dalších procesorů pro uživatele, jež nejsou
obeznámeni s možnostmi a mezemi dnešního macovského
multiprocessingu, zklamán ím.
Při testu jsme do Pulsaru s 225MHz procesorem 604e
instalovali druhý procesor 604e na 250 MHz, což mimochodem není
právě nejšťastnější spojení (jiná možnost nebyla v době testu
k dispozici), protože primární procesor je zatěžován daleko více
než procesor duální a v této kombinaci je právě primární procesor
slabší. Výsledky testu vcelku potvrdily očekávání, kdy ve většině
běžných (rozuměj jednoprocesorových) aplikací došlo po přidání
procesoru k drobnému snížení výkonu, způsobenému vyšší režií na
správu více procesorů. Zcela jiná situace ale nastala tam, kde
byla aplikace schopna více procesorů využít. Typickou ukázkou
takové aplikace je PowerFrax pro kreslení fraktálů, kdy byl
dvouprocesorový Pulsar o 98 % rychlejší než jednoprocesorový.
PowerFrax je ale svým způsobem propagační benchmarkový program
ukazující sílu více procesorů, a tak z praktického hlediska byly
mnohem zajímavější testy v reálné aplikaci.
V našem případě byl touto aplikací populární Photoshop 4.0,
jehož některé příkazy a filtry jsou pro multiprocessing
optimalizovány. Právě testy ve Photoshopu v plné míře ukázaly
sílu i slabiny dnešních víceprocesorových Maců. Obecně totiž
nelze říci, že ta a ta aplikace je na víceprocesorovém stroji
rychlejší, je potřeba jít do větších detailů, a například
v případě Photoshopu se zaměřit na konkrétní příkazy. Zatímco
"jednoprocesorové" příkazy byly na dvouprocesorovém Macu vždy
o něco pomalejší, př íkazy a filtry podporující multiprocessing
byly rychlejší, ale překvapivě ne vždy (např. rotace
a překlopení). Nárůst výkonu navíc závisel na konkrétním příkazu
a nikdy se nepřiblížil magickému dvojnásobku, který by možná
někteří čekali po přidání druhého procesoru. U některých filtrů
(Spherize, Twirl, Crystallize, Pointillize) byl i tak nárůst
výkonu znatelný (30-60%).
Před nákupem víceprocesorového Maca je tedy potřeba
vyzkoušet, zda právě činnosti, které s počítačem provádíte
nejčastěji, budou skutečně urychleny. U kancelářských aplikací na
více procesorů rovnou zapomeňte, na druhou stranu grafici by
z více procesorů mohli těžit. Přidání druhého procesoru je totiž
pořád asi o polovinu levnější než upgrade na tolik opěvovaný G3
a někdy může přinést i vyšší výkon (ve Photoshopu například u již
zmíněných filtrů nebo při převodu CMYK na RGB).
K výrazné změně ve využití víceprocesorových počítačů by
mělo dojít s uvedením systému Rhapsody, který již bude podporu
více procesorů obsahovat, takže všechny aplikace pro tento systém
budou automaticky urychleny přidáním dalších procesorů. Abychom
si udělali představu, jak to může také vypadat, otestovali jsme
výkon více procesorů na zatím jediném operačním systému pro Macy,
jenž byl od začátku navržen pro více procesorů. Znalci již jistě
tuší, že řeč je o BeOS, což je skutečně víceprocesorový systém,
kde výkonu více procesorů ihned využívají veškeré aplikace bez
nutnosti speciálního uzpůsobení. Zde k žádnému zpomalení oproti
jednoprocesorové verzi prostě nedochází a dvouprocesorový Pulsar
tak byl při spuštění jediné testovací aplikace (3D rotace
předmětu) v průměru rychlejší o 20 %. Tento nárůst výkonu se týká
všech aplikací a ještě více se projeví při větším zatížení
systému. Srovnání s výkonem procesoru G3 nebylo možné u BeOS
provést, protože tento systém procesory G3 nepodporuje (BeOS
Release 3 se má snášet s G3 upgrady, ale ne s PowerMacy G3).
Generation 3
Hitem konce loňského roku se stalo uvedení třetí generace
procesorů PowerPC, které pro Macy znamenalo další výkonnostní
skok a vzdálení se pentiové konkurenci (a také konec krátké éry
Mac OS klonů). Názvem G3 je dnes obecně označován procesor PowerPC
750, jenž je nástupcem PowerPC 603e. Najdete ho ve všech nových
modelech PowerMaců a PowerBooků od Apple, kde se stal nosným
procesorem. UMAX dodává své počítače Pulsar s G3 upgradovací
kartou MAXpowr od Newer Technology.
Za výkonem procesoru G3 stojí především jeho dvě vlastnosti:
vnitřní architektura optimalizovaná pro Mac OS a použití backside
cache. Při návrhu G3 byly analyzovány typické toky instrukcí
macovských aplikací a tyto instrukce potom byly v procesoru
optimalizovány, což se přirozeně příznivě projevilo ve výkonu
většiny aplikací. Prakticky to znamená, že byly optimalizovány
především celočíselné instrukce, zatímco v operacích v plovoucí
desetinné čárce zdatně konkurují procesorům G3 starší 604e.
Druhé vylepšení v podobě backside cache je možná ještě
významnější. Backside cache totiž používá frekvenci odvozenou od
frekvence procesoru, místo tradiční pomalejší frekvence sběrnice.
Přístup do paměti cache tak pro procesor neznamená téměř žádné
zpoždění (u poměru frekvencí 1/1 je přístup okamžitý). Navíc je
backside cache poměrně velká, 512 KB až 1 MB, takže procesor
často vůbec nemusí sahat do hlavní (pomalejší) paměti, protože
potřebná data jsou načtena v rychlé paměti cache.
Tolik "teoretický" úvod a teď komentář k praktickým testům.
Pro srovnání jsme použili 225 MHz PPC 604e (512 KB Level 2 cache)
a 275MHz G3 s 1 MB backside cache běžící na 183 MHz. Obě
procesorové karty byly zkoušeny ve stejném počítači, takže výkon
aplikací byl ovlivněn pouze použitým procesorem.
Úvodní test programem MacBench 4.0 ukázal více než
dvojnásobné zvýšení výkonu u G3 oproti 604e, a také výkon FPU
vzrostl, i když ne tak významně. Při reálném používání počítače
byla zrychlení patrná, ale zdaleka ne tak výrazně, jak naznačoval
MacBench. To jen potvrzuje fakt, že výkon počítače není dán pouze
použitým procesorem. Skutečně impozantní ale bylo urychlení
windowsového emulátoru RealPC (zde se naplno projevila backside
cache), u kterého benchmarkový program WinBench 98 ukázal 75%
navýšení výkonu. Toto zrychlení je nejen uměle naměřené
benchmarkovým testem, ale cítíte ho při každém posunu okna
a překreslení obrazovky (osobně používám jako ukázku výkonu
emulátoru grafické šetřiče obrazovky nebo "skákající" karty po
ukončení hry Pasiáns). Emulované PC tak na G3 strojích skutečně
běží rychlostí pentiového počítače.
Zajímavé bylo srovnání G3 s víceprocesorovým Macem a při
výpočtech v pohyblivé řádové čárce. V případě fraktálového
programu PowerFrax, kdy je hodně využíván FPU, byl dokonce
i jediný procesor 604e na 225 MHz o 13-16 % rychlejší než G3 na
275 MHz, což jen potvrzuje nadřazenost 604e nad G3 pokud jde
o matematické výpočty. Dvouprocesorový Mac pak byl rychlejší
2,3krát než G3. Také ve Photoshopu 4.0 byl dvou-procesorový Mac
v některých operacích rychlejší (viz předchozí kapitola) než G3,
ve velké vě tšině ostatních příkazů ale vítězí G3. A pokud se
snad těšíte na víceprocesorové systémy s G3, tak vás asi zklamu.
G3 jako nástupce 603e nelze používat ve víceprocesorových
systémech.
K testované upgradovací kartě MAXpowr PRO ještě jedna
poznámka. Přestože je oficiálně dodávána s 1 MB backside cache na
183 MHz, v přiloženém ovládacím panelu můžete klidně nastavit
frekvenci 275 MHz (poměr 1/1) a kartu dále sladit se zbytkem
počítače, a tak dosáhnout ještě vyššího výkonu.
Shrnutí
Co si odnést z tohoto článku? Snad tři obecná pozorování. Za
prvé, nainstalovaný systémový software ovlivňuje nejen funkčnost,
ale i výkon počítače. Za druhé, upgrade na G3 výrazně zvyšuje
celkový výkon počítače (většiny aplikací), ale ne tak, jak na
základě umělých testů tvrdí výrobci. Za třetí, v některých
poměrně speciálních případech může přinést navýšení výkonu při
nižší ceně přidání dalšího procesoru.
Duální procesor Geminy Card 604e/250 (28 890 Kč) a upgradovací
kartu MAXpowr PRO G3/275 MHz/1 MB (52 770 Kč) pro test zapůjčila
firma ConQuest computer, Nuselská 46, Praha 4.
Software Adobe Photoshop 4.0 zapůjčila firma Amos Software,
s.r.o., Technická 2, Praha 6.
Obrázky:
1) Benchmarkové a aplikační srovnání - systémový software (vyšší
hodnoty = vyšší výkon) (bench.txt)
2) Možnosti víceprocesorových systémů (vyšší hodnoty = vyšší výkon)
(multi.txt)
3) Víceprocesorové Macy využívají technologie nPower (nPower.tif)
4) Program PowerFrax je typickou ukázkou využití výpočtové síly
víceprocesorových strojů (fractals.tif)
5) BeOS plně podporuje více procesorů (BeOS.tif)
6) Aplikační srovnání - kde dominuje G3 (vyšší hodnoty = vyšší
výkon) (g3.txt)
7) Pro emulaci Windows rozhodně zvolte G3 (RealPC.tif)
8) Výkon G3 upgradů od Newer Technology lze vyladit vhodným
nastavením v ovládacím panelu (newer.tif)
Vložené články:
Symetrický multiprocessing a Mac OS
Symetrický multiprocessing je pojem vztahující se přirozeně
k využití výkonu víceprocesorových systémů. Termín symetrický zde
znamená, že všechny procesory jsou si rovnocenné (žádný není
hlavní), tj. jednotlivé úlohy jsou rovnoměrně distribuovány na
jednotlivé procesory. Díky tomuto přístupu je možné plně využít
výkonu všech procesorů.
Současný Mac OS používá pro práci s více procesory jiný
přístup. Jeden z procesorů je zvolen jako hlavní a na něm běží
systémový software a veškeré "jednoprocesorové" aplikace. Další
procesory potom mohou být využívány jen speciálně vytvořenými
aplikacemi (například Photoshop 4.0) prostřednictvím systémového
doplňku. V praxi je pak primární procesor často přetížen, zatímco
ostatní běží na prázdno. Protože primární procesor se nyní musí
starat také o distribuci úloh pro další procesory, je po přidání
dalšího procesoru možné u některých aplikací pozorovat pokles
reálného výkonu.
Ze současných operačních systémů běžících na PowerMacích
a kompatibilních počítačích podporuje symetrický multiprocessing
pouze BeOS, setkáme se s ním ale také u nové generace macovských
operačních systémů známé pod názvem Rhapsody.
A.S.P.D.
Firma UMAX používá ve svých strojích Pulsar vlastní hardwarovou
architekturu A.S.P.D. (Advanced Scalable Processor Design), která
umožňuje ke stávajícímu procesoru PowerPC 604e jednoduše přidat
kartu s dalším procesorem PPC 604e a vytvořit tak
dvouprocesorový stroj, bez nutnosti "vyhodit" původní procesor.
Na základní desce Pulsaru jsou totiž umístěny dva sloty, z nichž
jeden je určen pro kartu s primárním a druhý pro kartu s duálním
procesorem. Přestože oba sloty vypadají stejně, nelze karty mezi
nimi libovolně zaměňovat. Do primárního slotu lze instalovat
libovolnou procesorovou kartu odpovídající specifikaci Apple,
tedy klidně i dvouprocesorovou kartu od DayStar. UMAX dnes
instaluje do primárního slotu buď karty s PPC 604e na různých
frekvencích, nebo karty od Newer Technology s procesory G3. Pro
sekundární slot jsou určeny výhradně karty Geminy od UMAXu, které
jsou navíc schopny spolupracovat pouze s primární kartou
odpovídající specifikaci A.S.P.D. (takové jsou standardně inst
alované 604e karty). Není tedy možné instalovat například
dvouprocesorovou kartu do primárního slotu a Geminy kartu do
sekundárního, a tím získat tříprocesorový počítač. Podobně
nelze používat G3 karty v kombinaci s Geminy kartou (G3 vůbec
nepodporuje multiprocessing). Na druhou stranu, procesor na
Geminy kartě může běžet na jiné frekvenci, než je frekvence
primárního procesoru, i když samozřejmě optimálního výkonu se
dosahuje při použití procesorů běžících na stejných frekvencích.
Tabulka 1
System 7.5.3 <TAB>Mac OS 8.0 <TAB>Mac OS 8.1
MacBench 4.0-CPU <TAB>411 <TAB>476 <TAB>475
MacBench 4.0-FPU (+MotoLib) <TAB>449/723 <TAB>448/720 <TAB>587/720
kopírování (velký soubor) <TAB>100 <TAB>97 <TAB>103
kopírování (malé soubory) <TAB>100 <TAB>81 <TAB>80
hledání na disku <TAB>100 <TAB>95 <TAB>101
spouštění aplikací <TAB>100 <TAB>90 <TAB>95
Tabulka 2
<TAB>604e/225 <TAB>Dual 604e <TAB>G3/275
Finder
-kopírování <TAB>100 <TAB>93 <TAB>104
-hledání <TAB>100 <TAB>96 <TAB>102
-spouštění aplikací <TAB>100 <TAB>93 <TAB>120
Word 98
-AutoSummarize <TAB>100 <TAB>96 <TAB>120
-WordCount <TAB>100 <TAB>86 <TAB>127
-převod z Word 5.1 <TAB>100 <TAB>100 <TAB>109
Excel 98
-přepočet tabulky <TAB>100 <TAB>93 <TAB>132
RealPC 1.0.3 (WinBench 98)
-CPUmark 32 <TAB>80 <TAB>65 <TAB>140
-FPUWinMark <TAB>139 <TAB>134 <TAB>177
Tabulka 3
<TAB>604e/225 <TAB>Dual 604e <TAB>G3/275
MacBench 4.0-CPU <TAB>475 <TAB>394 <TAB>998
MacBench 4.0-FPU <TAB>720 <TAB>695 <TAB>884
PowerFrax <TAB>100 <TAB>198 <TAB>87
Adobe Photoshop 4.0
-Spherize <TAB>100 <TAB>130 <TAB>125
-Twirl <TAB>100 <TAB>125 <TAB>120
-Crystallize <TAB>100 <TAB>164 <TAB>129
-Pointillize <TAB>100 <TAB>152 <TAB>132
-CMYK na RGB <TAB>N/A <TAB>100 <TAB>70