Jak na výkonný počítač?

1. 7. 1998

Sdílet

Pohled na systém, multiprocessing a procesory G3 Tradiční folklór říká, že pro libovolně výkonný počíta





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