\"/
\"/ \"/    

Superpočítač grond.ics.muni.cz v novém kabátě

Luděk Matyska, FI MU, ÚVT MU
Ročník VII - číslo 1, říjen 1996
Citace: L. Matyska. Superpočítač grond.ics.muni.cz v novém kabátě. Zpravodaj ÚVT MU. ISSN 1212-0901, 1996, roč. VII, č. 1, s. 3-6.
Tematické zařazení: Superpočítače a gridy
 předchozí článek | následující článek 

Je to právě jeden a tři čtvrtě roku, kdy bylo v Brně zřízeno Superpočítačové centrum a v jeho rámci byl při ÚVT MU instalován šestiprocesorový počítač POWER Challenge firmy Silicon Graphics. Fond rozvoje, v rámci jehož pilotního projektu bylo toto a obdobná centra v Praze a dalších městech republiky zřízena, na superpočítačové aktivity nezanevřel ani v dalších letech, a tak v roce 1996 byl přijat projekt "Superpočítačová centra vysokých škol", projekt, jehož hlavním cílem bylo dále zlepšit výkon superpočítačů na vysokých školách České republiky.

1  Technické vybavení

Přestože v době instalace byl počítač grond jedním z nejvýkonnějších počítačů dostupných akademické veřejnosti, velmi brzy toto výsadní postavení ztratil. Počítač IBM SP2, instalovaný při ČVUT v Praze, stejně jako počítač AlphaServer 8400 firmy Digital, instalovaný při ZU v Plzni, měly od okamžiku instalace v roce 1995 jak větší počet procesorů, tak především větší celkový výkon poskytovaný koncovému uživateli. Kromě ztráty prestižního postavení daleko nepříjemnější bylo zjištění, že speciální vlastnosti procesoru MIPS R8000, s velmi vysokým výkonem v oblasti výpočtů v pohyblivé řádové čárce, nevyhovují všem zájemcům o výkonné výpočty. Ukázalo se, že pro výpočty v pevné čárce (celočíselné výpočty), zejména pro výpočty s 8 a 16ti bitovými daty (byte či krátké slovo), poskytuje většina dostupných pracovních stanic stejný ne-li vyšší výkon, než "superpočítač" grond. Tento nepoměr se projevoval i při výpočtech, ve kterých numericky náročné výpočty byly "vtěleny" do složité logiky programu. Typickým příkladem pak byly programy v jazyce C++, kde programy s numerickými výpočty v komplexní aritmetice byly až o dva řády pomalejší, než ekvivalentní programy v jazyce Fortran. Počítač grond byl tak rovněž nevhodný pro databázové aplikace, přestože jejich podíl začíná v superpočítačových střediscích podstatně růst.

Tyto nedostatky přirozeně nebránily plnému využití počítače, spíše omezovaly jeho použitelnost i v doposud netradičních oblastech využití superpočítačů. Současně nepříliš vysoký počet procesorů (6) neumožňoval plně využít možnosti paralelizace, které zvolená architektura počítačů POWER Challenge nabízí.

Vezmeme-li do úvahy, že technologická životnost současných počítačů je zhruba 18 měsíců (stačí srovnat, s jakou rychlostí uvádí firma Intel nové procesory), pak je polovina roku 1996 právě dobou, kdy by mělo dojít k obnově technického vybavení. Tato úvaha spolu s uvedenými omezeními vedla v roce 1995 k rozhodnutí hledat finanční zdroje na radikální povýšení počítače grond a dalších počítačů (nejen POWER Challenge), pořízených v rámci pilotního projektu Fondu rozvoje. Byl podán výše zmíněný projekt "Superpočítačová centra vysokých škol", jehož cílem bylo povýšit výkon instalací centrálních výpočetních serverů v Praze a Brně.

Výsledkem realizace tohoto projektu byla výměna všech procesorů za nový procesor MIPS R10000 při současném zdvojnásobení jejich počtu1. Zároveň byla zvýšena kapacita hlavní paměti, a to opět na dvojnásobek. Počítač grond se tedy v současné době může pochlubit 12 procesory MIPS R10000/195MHz s jedním MB sekundární vyrovnávací paměti (cache) každý a 2GB hlavní paměti (jedná se o paměť s osminásobným prokládáním, aby bylo dosaženo maximální rychlosti přístupu). Současně již od začátku roku 1996 je k počítači grond připojeno externí diskové pole s kapacitou 28GB, čímž je celková kapacita on-line připojených disků 40GB. Instalace počítače grond (stejně jako ekvivalentního počítače hal v Praze) se tak dostává mezi 500 instalací nejvýkonnějších počítačů světa2.

Nový procesor

Nově instalovaný procesor MIPS R10000 je procesorem nové generace, implementujícím architekturu ANDES (Architecture with Non-sequential Dynamic Execution Scheduling). Jedná se o procesor, který jednotlivé instrukce nevykonává přesně v tom pořadí, v jakém jsou zapsány v kódu programu. Namísto toho se vnitřní logika procesoru snaží optimalizovat pořadí vykonávaných instrukcí tak, aby všechny části procesoru byly stále využity. RISCové procesory (k nim patří jak předchozí procesor R8000, tak i nový R10000) mají k dispozici několik výpočetních jednotek, které mohou pracovat současně. Ve skutečném programu však příliš často může pracovat pouze jediná jednotka, zatímco ostatní jsou blokovány - čekají na data. Toto čekání může být způsobeno jak závislostí jednotlivých operací (např. v posloupnosti příkazů x=a+b; y=x+c; se druhý součet nemůže provést dříve, dokud nebude dokončen první), tak i tím, že příslušná data nejsou k dispozici (musí být přenesena z hlavní paměti3. V architektuře ANDES procesor sám, podle okamžité dostupnosti dat, určuje, které operace je možno provést, a tím maximalizuje využití procesoru. Instrukce provedené "mimo pořadí" pak čekají na dokončení operací, které ve zdrojovém textu programu předcházely. Výsledný efekt je identický jako u běžných procesorů, ovšem při podstatném zvýšení celkového výkonu. Výrazného zvýšení výkonu je přitom možno dosáhnotu bez přeložení programů, protože optimalizaci provádí přímo procesor a nikoliv překladač. Samozřejmě, optimalizace (často stačí opětné přeložení) programu může dále zvýšit dosažený výkon.

V počítači grond jsou instalovány procesory MIPS R10000, pracující na frekvenci 195MHz. Tyto procesory mají teoretický výkon kolem 400 MFLOPS (milionu operací s pohyblivou čárkou za sekundu; "starý" procesor R8000 měl 300 MFLOPS) a více jak 200 MIPS (milionů operací s pevnou řádovou čárkou za sekundu). Reálné zkušenosti ukazují, že většina numericky náročných programů dosahuje zhruba dvojnásobného zvýšení rychlosti oproti procesoru R80004.

2  Programové vybavení

Uživatelé již koncem minulého roku zaznamenali přechod počítače grond pod novou verzi operačního systému, a to IRIX 6.2. Tato verze (jedná se stále o UNIX V Release 4) představuje sjednocení operačních systémů firmy Silicon Graphics. IRIX 6.2 je dostupný pro všechny počítače firmy SGI, od pracovních stanic Indy a Indigo2 přes servery Challenge až po velké systémy POWER Challenge.

Tento operační systém pracuje s vnitřní 64bitovou implementací na všech procesorech používaných na počítačích firmy SGI. Vývojové prostředí, které je na počítači grond dostupné, podporuje i speciální 32bitové módy, které usnadňují postupnou migraci programů z běžného 32bitového prostředí (používaného např. na pracovních stanicích firmy SUN, či v operačním systému Linux) do plně 64bitového prostředí. Zájemce odkazujeme na on-line manuály a manuálové stránky (především informace o přepínači překladačů -n32).

Snad nejpodstatnější předností operačního systému IRIX 6.2 je logovaný (journaled) systém souborů XFS. Ten je sice dostupný i pro poslední předcházející 32bitovou verzi, IRIX 5.3, další vývoj tohoto systému souborů se však předpokládá pouze pro IRIX 6.x. XFS je plně 64bitový systém souborů, ve kterém je odstraněna hranice 2GB pro soubor a 8GB pro systém souborů. Aktuální hranice jsou v řádu terabyte (1012 byte), tj. podstatně výše, než kde se bude pohybovat jakákoliv fyzická realizace. Systém XFS tak umožňuje pracovat s počítačem grond jako se skutečným (vektorovým) superpočítačem, kde již delší dobu platí obdobná (ne)omezení. Další výhodou systému XFS je logování - každá operace, která mění stav souborů (např. zápis dat, vytvoření, přejmenování nebo výmaz souboru), je zaznamenána do speciálního souboru (log file), uloženém na předem definovaném místě na disku. Z tohoto souboru je informace odstraněna teprve tehdy, získá-li operační systém potvrzení o úspěšné realizaci zaznamenané diskové operace. Po případné havárii (např. výpadek napětí) pak stačí projít log soubor a dokončit (případně zrušit) nedokončené operace. Doba nápravy je pak úměrná pouze diskové aktivitě těsně před havárií5. XFS má ještě další vlastnost, určenou pro multimediální aplikace. Je-li XFS realizován nad dostatečně rychlými disky (které navíc "zná" operační systém), pak je možno konkrétní aplikaci zaručit požadovanou rychlost přístupu k datům. Tato vlastnost je nezbytná pro kvalitní reprodukci audio a video signálu, nahraného na disku6. Jedná se o podobné vlastnosti, jaké poskytuje i přenosový protokol ATM.

Operační systém IRIX 6.2 má však i určité nevýhody. Pro malé pracovní stanice největší nevýhodou je (možná paradoxně) jeho 64bitovost. Všechny interní struktury jádra mají dvojnásobnou velikost, což vede k podstatně větším nárokům na paměť. Počítače s 32MB vnitřní paměti jsou sice stále použitelné, 64MB se však stáva nezbytným minimem pro skutečně seriozní práci. Daleko podstatnější je však to, že IRIX 6.2 již nepodporuje formát spustitelných programů COFF (Common Object File Format) a spustitelné programy (binaries) musí být sestaveny ve formátu ELF (Extended Linkage Format). To nepředstavuje žádný problém, máme-li přístup ke zdrojovým textům programu (ostatně, optimální využití procesoru R10000 si přinejmenším znovupřeložení přímo žádá), komplikace však nastanou při využití programových systémů, dostupných pouze v binarní podobě. Přestože lze očekávat, že výrobci programového vybavení poskytnou nové verze ve formátu ELF, znamená to přinejmenším nepříjemné zdržení (a nemáme-li smlouvu o podpoře, může to představovat i dodatečné finanční náklady).

3  Závěr

Počítač grond je zapojen na záložním zdroji napětí, což kromě stabilního proudu znamená, že je schopen překlenout až 10ti minutové výpadky vstupního napájení. Na stejném záložním zdroji je připojeno i diskové pole. Zálohování dat počítače zajišťuje páskový robot, pracující se sedmi DLT magnetickými páskami s kapacitou 10GB (20GB s kompresí) každá.

Ještě několik statistických čísel: V současnosti je na počítači grond registrováno cca 120 uživatelů. Míra vytížení systému se blíží 100%, ovšem nezanedbatelnou část doby tráví celý počítač ve stavu čekání na dokončení vstup/výstupních operací (v průměru 10-15%). Průměrná délka fronty procesů je 14, toto číslo je ovšem výsledkem nastavení dávkového systému LSF a snahy nepřetěžovat již teď značně zatíženou vnitřní sběrnici a především vstup/výstupní subsystém. V průměru uživatelské procesy zabírají 1,3GB vnitřní paměti, což při cca 200MB pro potřeby operačního systému a 400MB vstup/výstupních vyrovnávacích pamětí neponechává příliš mnoho volné paměti (přibližně 150MB). Díky nastavení parametrů dávkového systému LSF však počítač grond swapuje jen výjimečně.

Hlavní využití počítače grond směřuje do oblasti výpočtů v přírodních vědách, určitá část výkonu je věnována i novým aplikacím. Ab initio výpočty, molekulová dynamika a výpočty programy molekulové mechaniky patří pravděpodobně k největším "konzumentům" výkonu.

V současné době je hlavním nedostatkem počítače grond nedostatečná propustnost vstup/výstupních kanálů, kombinovaná s omezenou kapacitou hlavní paměti nedostačující jako skutečně rozsáhlá vyrovnávací paměť. Zdá se, že "optimální" konfigurace počítače POWER Challenge se dvanácti procesory MIPS R10000 vyžaduje 4GB hlavní paměti a celkovou propustnost pro vstup/výstupní operace alespoň 100MB/s, což představuje 5 samostatných SCSI-2 Fast Wide kanálů s připojenými disky.

A na skutečný závěr již jen zopakujeme jméno hlavního systémového správce: Miroslav Ruda (ruda@icsteckamuniteckacz), dostupný na telefonním čísle 41512258. Žádosti o systémovou pomoc je možno směrovat na adresu scb_support@muniteckacz, dotazy administrativního charakteru na adresu scb_admin@muniteckacz.

setting
1 Počítače hal (při ÚVT UK Praha) a grond byly povýšeny stejným způsobem, na počítači jumbo při CVIS VUT Brno byl dokonce počet procesorů zvýšen ze dvou na osm.
... zpět do textu
2 Toto umístění je spíše teoretické, protože lze bohužel předpokládat, že počítač grond nebude jediným povýšeným počítačem na světě. V době nového vydání seznamu TOP 500 instalací pěti set nejvýkonnějších počítačů již na gronda s největší pravděpodobností místo nevybude. Přesto taková maličkost alespoň trochu potěší.
... zpět do textu
3 Zatímco data v registrech procesoru jsou k dispozici okamžitě, data ve vyrovnávací paměti většinou se zdržením jednoho cyklu, na data z hlavní paměti musí procesor R10000 v počítači POWER Challenge čekat průměrně 100 cyklů (za jeden cyklus je procesor schopen uskutečnit až tolik operací, kolik má nezávislých jednotek).
... zpět do textu
4 Jedinou výjimkou je program Gaussain'94, který na procesoru R10000 počítá nejvýše stejně rychle jako na procesoru R8000. Pravděpodobnou příčinou je podstatně menší vyrovnávací paměť procesoru R10000, pouze 1MB proti 4MB u R8000, skutečné příčiny této anomálie však stále nejsou známy.
... zpět do textu
5 Toto je ovšem teorie. V praxi se ukazuje, že i log soubor může být poškozen, a v takovém případě již není možno obnovit stav celého systému souborů jinak než využitím záložní kopie. XFS nemá žádné pomocné programy, které by umožnily alespoň manuální záchranu nejcennějších dat. O to důležitější je proto pravidelné zálohování.
... zpět do textu
6 Nepochybně každý, kdo kdy spouštěl video nahrané na počítači, zaznamenal alespoň občas "trhaný" pohyb, způsobený zpožděním disku. Zaručená propustnost, implementovaná v XFS, tento nedostatek eliminuje.
... zpět do textu
Zpět na začátek
ÚVT MU, poslední změna 14.11.2011