Superpočítač

Superpočítač je v informatice označení pro velmi výkonný počítač, v poslední době nejčastěji ve formě počítačového clusteru, tedy spojení mnoha běžných počítačů dohromady, a to obvykle speciální vysokorychlostní sítí. Nejrychlejším superpočítačem světa byl v červnu 2016 čínský superpočítač Sunway TaihuLight čínského původu, který dosahuje rychlosti přibližně 93 petaflops., od listopadu 2018 jím byl superpočítač Summit s rychlostí 200 petaflops z laboratoří amerického ministerstva energetiky Oak Ridge National Laboratory (ORNL) a od června 2020 je nejrychlejším superpočítačem světa japonský Fugaku s rychlostí 415 petaflops. V březnu 2020 se stal nejvýkonnějším gridovým clusterem projekt Folding@home.Od roku 2022 se stal nejrychlejším a nejúspornějším superpočítačem Frontier. 

Od roku 1993 jsou superpočítače řazené do žebříčku TOP500 OS, podle výsledku v benchmarku LINPACK, který počítá operace s velkými maticemi. Žebříček se obnovuje dvakrát do roka.

Charakteristika 

Hranice pro označení superpočítač není přesně daná. V některých pramenech se hovoří o minimálně desetinásobně vyšším výkonu oproti běžně dostupným počítačům, avšak za superpočítače jsou s jistou mírou nadsázky označována i méně výkonná, avšak zajímavá řešení (například superpočítač udělaný z Raspberry Pi). Výkon superpočítačů je měřen v jednotkách FLOPS (FLoating Point Operations Per Second), přičemž se využívají jejich SI násobky, např. „TFLOPS“ (1012 FLOPS, napíšeme jeden teraflops).

Jak je možné vidět na obrázku, největší podíl v oblasti operačních systémů mají unixové systémy, speciálně pak Linux, což je způsobeno otevřeností těchto systémů.

Superpočítače jsou používány pro výpočetně náročné úlohy a „velké“ úlohy, např. výzkum genomu, fyzikální modelování (např. modelování jaderných výbuchů, předpovídání počasí), kryptoanalýzu apod. Pro některé úlohy se vytvářejí specializované superpočítače (viz níže).

Superpočítače se dnes využívají téměř ve všech vědních oblastech. Používají se na tvorbu a testování modelů sledovaných nebo zkoumaných jevů.

 modely kvantové fyziky, předpovídání počasí, modely organické chemie
 kryptoanalýza, dopravní modely

Architektura moderních superpočítačů 
Architektura superpočítačů je v současné době založena na propojení velkého množství běžných počítačů prostřednictvím vysokorychlostní počítačové sítě (viz počítačový cluster). Tento způsob používá např. firma Google pro katalogizaci stránek z celého internetu. Cluster z běžných počítačů je nesrovnatelně levnější než jeden specializovaný superpočítač obdobného výkonu. Prvních deset nejvýkonnějších superpočítačů v žebříčku TOP500 má stejnou základní architekturu. Každý z nich je clusterem MIMD (Multiple Instruction stream, Multiple Data stream) multiprocesorových sestav, přičemž každý z procesorů je architektury SIMD (Single Instruction/Multiple Data). Superpočítače se radikálně liší počtem multiprocesorových jednotek na cluster, počtem procesorů na jednu jednotku a počtem současně vykonavatelných instrukcí na jeden SIMD procesor.

 Počítačový cluster je soubor počítačů propojených vysokorychlostní sítí, přičemž na každém z nich běží samostatné úlohy operačního systému.
 Multiprocesorový počítač je počítač, na kterém běží jeden samostatný operační systém a používá víc než jeden CPU, přičemž počet uživatelských aplikací je jiný než počet procesorů. Procesory sdílejí úlohy pomocí technologií SMP (Symmetric multiprocessing) a NUMA (Non-Uniform Memory Access).
 SIMD procesor spouští stejné instrukce na více než jednom souboru dat v tomtéž čase. Jsou to tzv. vektorové procesory. Jejich výhodou je větší efektivita a s tím spojená nižší spotřeba při stejném výkonu.

Některé superpočítače používají i výkonné grafické karty, přesněji jejich GPU (GPGPU).

Distribuovaný výpočet 
Mezi superpočítače lze zařadit i spojení velkého množství běžných osobních počítačů pomocí internetu. Striktně vzato to není superpočítač, ale distribuovaný výpočet, a může počítat (některé) podobné druhy a velikosti úloh jako superpočítače a přitom má smysl srovnávat jeho výkon se superpočítači. To je výhodné u výpočtů, které lze snadno paralelizovat a jež nevyžadují rychlou komunikaci mezi jednotlivými uzly. Jedním z nejznámějších projektů tohoto druhu je SETI@home zabývající se analýzou signálů z radioteleskopu a dosahující výkonu přibližně 250 teraflops (biliónů operací za sekundu). Tento způsob celosvětového využívání volného procesorového času počítačů prostřednictvím internetu se nazývá grinding. Obecná platforma pro distribuované výpočty, která počítá různé i rozumné věci, je BOINC.

V souvislosti s pandemií covidu-19 došlo k obrovskému nárůstu uživatelů do té doby méně významného Folding@home, který s více než 1 EFLOPS překonal kombinovaný výkon 100 nejvýkonnějších superpočítačů.

Superpočítače se speciálním určením 
Mnoho superpočítačů nebylo postaveno proto, aby uspokojovaly potřeby vědecké komunity, ale kvůli řešení konkrétní úlohy. Například:

 Deep Blue – vytvořen pro hraní šachů, jako první stroj porazil v této hře člověka (Garryho Kasparova)
 GRAPE – vytvořen pro úlohy astrofyziky a molekulární dynamiky
 Deep Crack – vytvořen k prolomení šifry DES

Historie 
První superpočítače byly vytvořené v šedesátých letech Seymourem Crayem. Veřejnosti byly zpřístupněné prostřednictvím jeho firmy Cray Research. V osmdesátých a začátkem devadesátých let vstupovaly na trh se superpočítači mnohé malé firmy. Ty však byly začátkem devadesátých let vytlačeny velkými „tradičními společnostmi“ jako IBM a HP.

Nazývat nějaký výpočetní stroj superpočítačem můžeme jen při současné specifikaci doby, ve které byl navržen a sestrojen. Důvodem relativnosti tohoto přívlastku je rychlý vývoj v této oblasti, protože stačí několik let a běžné počítače se výkonem plně vyrovnají několik let starému superpočítači. V prvním Crayově stroji byly jednoduché a rychlé skalární procesory, přibližně 10krát rychlejší než běžně používané v komerční sféře. V sedmdesátých letech se na trh dostávají levné stroje postavené na vektorových procesorech od malých výrobců s novou vlastní architekturou. Začíná se prosazovat paralelizace, čtyř až šestnácti výpočetních jader. Začátkem devadesátých let začala vlna enormní paralelizace. To vedlo k superpočítačům postaveným na serverových procesorech architektur PowerPC, Itanium a x86-64. Zpočátku byly množstvím rovnocenných procesorů uspořádaných do navzájem propojených struktur. Dnes nastává éra hybridních řešení, ve kterých se využívají různé druhy procesorů na různé části výpočetního procesu. Jejím „zakladatelem“ se stává IBM se systémem založeným na procesorech Cell a Opteron pro Los Alamos National Laboratory.

Hardware a software 
Výpočetní síla superpočítačů s sebou přináší extrémní složitost po hardwarové i softwarové stránce.

Napájení a chlazení Napájení a chlazení je nejviditelnějším problémem. Superpočítače jsou sestavované z velkého množství paralelně zapojených procesorů se spotřebou podobnou, jako mají běžně dostupné počítače na trhu. Vzhledem k velikosti celého systému je jejich spotřeba enormní, což klade velké nároky na interní elektrické rozvody, které musí být chlazené. V některých případech jsou využívány supravodivé materiály v kombinaci s chlazením na teplotu blízkou absolutní nule. Chlazení samotných procesorů je také náročná úloha. Dnes nejrozšířenější metodou je využití kapalinového okruhu. Někdy se využívá dusíkové nebo héliové chlazení.

Velký objem přenášených dat Velký objem přenášených dat je dalším problémem. Sítě musí mít obrovskou datovou propustnost a zároveň musí být dostatečně rychlé. Jejich rychlost je však limitovaná rychlostí šíření elektromagnetického impulzu. Ať už se jedná o optickou nebo metalickou síť, rychlost přenosu dat je limitovaná rychlostí světla. I operační paměť musí být přiměřeně velká, rychlá a blízká.

Vysoké frekvence Vysoké frekvence v řádech GHz jsou dalším problémem. Při vysokých elektrických frekvencích impuls ztrácí schopnost šířit se i po velmi krátkých vodičích. Je to způsobeno tím, že každý vodič se stává téměř dokonalou anténou, pokud je jeho délka rovna alespoň polovině vlnové délky el. signálu v tomto vodiči. Proto je nutné všechny spoje realizovat pomocí vedení nebo vlnovodů, což však klade velké nároky na konstrukci a použití materiálů.

Technologie ze světa superpočítačů 
 Vector processing
 Kapalinové chlazení
 Non-Uniform Memory Access (NUMA)
 Striped disks (později nazvané RAID)
 Paralelní souborové systémy

Software 
Softwarové nástroje potřebné pro paralelní a distribuované procesy vyžadují speciální technologie. Například standardní API jako MPI, PVM nebo open source řešení klastru jako Beowulf, WareWulf, openMosix. Tyto nástroje umožní vytvoření superpočítače, resp. klastru, z několika propojených pracovních stanic. Technologie ZeroConf (Rendezvous/Bonjour) se využívají k vytvoření jednoúčelových clusterů pro specializovaný software jako například Apple's Shake (úprava a tvorba obrazu). V této oblasti je open source software na stejné úrovni jako komerční.

Programování 
Paralelní architektura si přímo vynucuje použití speciálních metod a nástrojů, aby bylo možné maximálně využít dostupný výkon. Často se používají speciální překladače pro jazyk Fortran, které generují rychlejší kódy než kompilátory jazyků C a C++. Programovací jazyk Fortran je přímo určený na vědeckotechnické výpočty. Pro rozvinutí paralelismu se používají prostředí jako PVM, MPI nebo OpenMP.

České superpočítače

Národní superpočítačové centrum IT4Innovations 

IT4Innovations národní superpočítačové centrum při VŠB – Technické univerzitě Ostrava je předním výzkumným, vývojovým a inovačním centrem v oblasti vysoce výkonného počítání (HPC), datových analýz (HPDA) a umělé inteligence (AI), provozující nejvýkonnější superpočítačové systémy v České republice. Centrum společně s institucemi CESNET a CERIT-SC tvoří strategickou výzkumnou infrastrukturu České republiky e-INFRA CZ. Tato infrastruktura je uvedena v Cestovní mapě velkých výzkumných infrastruktur České republiky pro výzkum, experimentální vývoj a inovace, kterou sestavuje Ministerstvo školství, mládeže a tělovýchovy. Centrum poskytuje nejmodernější superpočítačové technologie a služby jak českým, tak i zahraničním výzkumným týmům z akademické i soukromé sféry za účelem zvýšení konkurenceschopnosti a inovativnosti české vědy a průmyslu. Zabývá se rovněž excelentním výzkumem - stěžejními tématy jsou zpracování a analýza rozsáhlých dat, strojové učení, vývoj paralelních škálovatelných algoritmů, řešení náročných inženýrských úloh, pokročilá vizualizace, virtuální realita, modelování pro nanotechnologie a vývoj nových materiálů.

Přidělování výpočetní kapacity

Výpočetní kapacita centra je určena pro řešení úloh ve výzkumu a vývoji především pro akademická pracoviště a další výzkumné instituce v České republice. Část kapacity je pak dedikována pro rozvoj spolupráce mezi akademickou sférou a průmyslovými partnery, či pro samostatné využití průmyslovými podniky. Veřejná grantová soutěž je vypisována 3x ročně (únor, červen, říjen) pro zaměstnance výzkumných, vědeckých a vzdělávacích organizací z ČR a pro projekty financované z veřejných zdrojů ČR. V rámci této soutěže bylo v letech 2013—2020 podpořeno 902 projektů v celkovém objemu 1,027 miliard jádrohodin, přičemž požadavky výzkumníků v tomto období přesáhly 1,404 miliard jádrohodin (jádrohodina = jedno procesorové jádro na hodinu).

Projekty

Centrum řeší, či se podílí na řadě domácích i zahraničních projektů. K nejvýznamnějším patří:

 PRACE (Partnership for Advanced Computing in Europe) www.prace-ri.eu
 LEXIS (Large-scale Execution for Industry & Society) lexis-project.eu 
 EuroCC eurocc-project.eu 
 POP2 (Performance Optimisation and Productivity 2) pop-coe.eu
 EVEREST everest-h2020.eu
 OPENQKD (Quantum Key Distribution) openqkd.eu
 ExaQUte (Exascale Quantifications of Uncertainties for Technology and Science Simulation) www.exaqute.eu 
 TETRAMAX (Technology transfer via multinational application experiments) www.tetramax.eu
 CloudiFacturing (Cloudification of Production Engineering for Predictive Digital Manufacturing) www.cloudifacturing.eu
 EXPERTISE (EXperiments and high PERformance computing for Turbine mechanical Integrity and Structural dynamics in Europe) http://www.msca-expertise.eu/
 SCtrain (Supercomputing knowledge partnership) sctrain.eu 
 ACROSS (HPC big dAta artifiCial intelligence cross stack platfoRm tOwardS exaScale) acrossproject.eu
 LIGATE (LIgand Generator and portable drug discovery platform AT Exascale) ligateproject.eu 
 SCALABLE (SCAlable LAttice Boltzmann Leaps to Exascale) scalable-hpc.eu
 DICE (Data Infrastructure Capacity for EOSC) dice-eosc.eu
 s-NEBULA (Novel Spin-Based Building Blocks for Advanced TeraHertz Applications) s-nebula.eu
 IO-SEA (IO Software for Exascale Architecture)

Amálka 
Amálka je český paralelní superpočítač umístěný v Ústavu fyziky atmosféry Akademie věd ČR (ÚFA AV ČR). Jeho úkolem je provádění náročných výpočtů, numerických experimentů a vizualizací v rámci kosmického výzkumu. Využití tohoto superpočítače se přitom neomezuje pouze na české projekty, ale spolupracuje se i na výzkumné činnosti pro Evropskou kosmickou agenturu a NASA. Používaným operačním systémem je Linux Slackware.

Současný výpočetní výkon Amálky je 6,38 TFLOPS (6. generace), což znamená, že superpočítač zvládne zpracovat 6,38 bilionu operací v plovoucí řádové čárce za sekundu. „Co Amálka zvládne vypočítat za jednu sekundu, by na běžném stolním počítači v roce 2007 trvalo odhadem devět hodin. Průměrná úloha, kterou Amálka řeší, jí odhadem trvá šest dní“.

Na Amálce byly například analyzovány výsledky pozorování sond Cassini nebo MESSENGER.

Vývoj Amálky

Současné složení

Dorje 
Dorje ([:dordže:] – z tibetštiny, rituální žezlo, v překladu Diamantový klín, doslovně Pán kamene) je v současné době třetí nejvýkonnější český superpočítač, který je umístěn ve Fyzikálním ústavu Akademie věd. Jeho výpočetní výkon dosahuje 4,2 TeraFlops.

MetaCentrum 

MetaCentrum sdružuje superpočítače a výpočetní clustery tří superpočítačových center a několika dalších organizací. Ke konci března 2009 sdružovalo počítače:
 Superpočítačového centra Masarykovy univerzity v Brně
 Superpočítačového centra Univerzity Karlovy v Praze
 Západočeského superpočítačového centra Západočeské univerzity v Plzni
 Přírodovědecké fakulty Jihočeské univerzity v Českých Budějovicích
 Fakulty elektrotechniky a komunikačních technologií Vysokého učení technického v Brně

MetaCentrum není homogenním clusterem jako Amálka, je tvořeno propojením více clusterů páteřní 100 Gb/s e-infrastrukturou CESNET. Nicméně dohromady MetaCentrum sdružuje k 30. 3. 2009 stroje s celkem 1365 jádry procesorů.

Reference

Externí odkazy 
 
 TOP500 Supercomputer list
 LinuxHPC.org Linux High Performance Computing and Clustering Portal
 WinHPC.org  Windows High Performance Computing and Clustering Portal – neplatný odkaz !
 Cluster Resources
 Cluster Builder – neplatný odkaz !
 CDAC
 Microsoft Windows Compute Cluster Server (CCS)
 Infiscale Cluster Portal – Free GPL HPC Resources 
 Supercomputing Online Homepage for the World's High-Performance Computing, Networking & Storage Professionals
 Degree Project about best alternatives to implement HPC Cluster
 https://web.archive.org/web/20121223042630/http://www.maxit.com.my/news.php?active_page=news_details&news_id=1601

Superpočítače
Počítačová terminologie