Na návštěvě u ostravského superpočítače Anselm

12. 5. 2014
Doba čtení: 11 minut

Sdílet

Superpočítač si většina z nás představí jako ohromnou bílou halu naplněnou hučícími racky se servery. V Ostravě ovšem mají jeden z nejvýkonnějších počítačů v Česku, který se jim vešel do lodního kontejneru. Stojí si na trávě za budovou a tváří se nenápadně. Zajeli jsme se podívat na něj i do něj.

Přibližně před rokem byl spuštěn nový superpočítač Anselm, který provozuje VŠB v Ostravě v rámci projektu IT4Innovations. Jde o jeden z nejvýkonnějších počítačů v Česku, což ovšem zdaleka není jediný zajímavý fakt. Rozjeli jsme se tedy do Ostravy na návštěvu.

Na naše všetečné otázky odpovídali Branislav Jansík, ředitel superpočítačových služeb IT4Innovations, a Josef Dvořáček, konzultant dodavatelské společnosti Bull.

IT4Innovations sídlí v podnikatelském inkubátoru, v zadní části areálu VŠB. Pan ředitel hned vysvětluje, proč vlastně celý projekt vznikl. Jsou tu velmi silné vědecké skupiny v oblasti aplikované matematiky, strukturální mechaniky a podobně. Tyto skupiny využívají matematiku jako nástroj a k tomu dnes samozřejmě potřebují počítače. Vznikla tak potřeba nového hardware, na kterém by se všechny tyto náročné výpočty prováděly, řekl nám na úvod Branislav Jansík. Vznikl tak projekt IT4Innovations, který slouží jako platforma zastřešující odborníky v oblasti výzkumu a zároveň poskytuje infrastrukturu. Zejména místní superpočítač Anselm.

Branislav Jansík, IT4Innovations

Branislav Jansík, IT4Innovations

Většina financí pochází ze startup grantu, který univerzita získala od Evropské komise a vlády České republiky, prostřednictvím Operačního programu Výzkum a vývoj pro inovace. Ten nám umožnil pokrýt počáteční investice a úvodní náklady na provoz, říká Jansík. Superpočítač není určen jen pro VŠB, ale je poskytován také dalším vědeckým institucím v rámci České republiky. Dvakrát do roka pořádáme soutěže, do kterých je možné přihlašovat projekty. Pokud patříte do organizace podporované státem, můžete se zúčastnit a získat pro svůj projekt výpočetní čas.

Příkladem zajímavých projektů jsou: Teplotní roztažnost materiálů pro reaktory 4. generace (IT4I, VŠB-TUO), Mechanismy enzymatických reakcí (CEITEC, MU Brno) , Vývoj adjuvantů (pomocných látek) pro moderní vakcíny (Fakultní nemocnice Hradec Králové), Modelování vrchní vrstvy kůže na molekulární úrovni (Palackého univerzita Olomouc), Optimalizace geometrie axiálně i radiálně chlazených automobilových brzd (IT4I, VŠB-TUO), Modelování divertorů plasmy pro tokamak ITER (Ústav fyziky plasmy, Akademie věd).

Josef Dvořáček, Bull

Josef Dvořáček, Bull

Na počítači však mohou běžet i zajímavé komerční projekty. Máme také možnost malou část kapacity prodat komerčním subjektům. Teď například počítáme pro Seznam nové 3D mapy, vysvětluje Jansík. Původní algoritmus měl běžet dva roky, ale máme tu experty, kteří program upravili tak, že snížili odhadovanou dobu jeho běhu na deset měsíců. Projekt stále běží, první výsledky jsou k dispozici na beta.mapy.cz.

Aplikace pro superpočítač se zdaleka nepíší jen v jazyce C. Typicky jde o nízkoúrovňové jazyky jako Fortran nebo C, ale zdaleka se nepoužívají jen ty. Používají se i interpretované jazyky jako třeba Matlab, Octave nebo R. I přesto nemusí docházet k nějaké výkonnostní ztrátě, protože všechny tyto jazyky používají pro výpočetní operace velmi efektivní nízkoúrovňové knihovny, říká Jansík. Jazyk tedy slouží jen jako „pojivo“ mezi kroky, které pak obstarává rychlý binární kód.

Příprava kódu pro superpočítač je velmi specifická a vyžaduje úplně jiný přístup. Kdybychom tady spustili běžnou naivní aplikaci, nedostali bychom výrazně lepší výsledek než v případě velmi výkonného PC, vysvětluje Branislav Jansík. Aplikace je třeba paralelizovat a zajistit, aby byly vícevláknové a pokud možno i víceprocesové. K tomu se používají OpenMP pro vícevláknové aplikace a MPI pro interprocesovou komunikaci. Nejsou to jediné způsoby, ale jsou to ty nejrozšířenější.

Dnešní vědec musí být s těmito technologiemi seznámen a musí být schopen je použít. Patří to k povolání vědce. Tak jako se vědec naučí pracovat třeba s mikroskopem, umí i obsluhovat a programovat počítač. Všechno ale není nutné vždy programovat znovu od začátku. Vědci často používají už existující postupy a aplikace, jen je upraví a použijí novým způsobem, dodává Branislav Jansík.

Vyrážíme ven z kanceláří na travnatou plochu za parkovištěm. Na poměrně malém oploceném plácku tu stojí několik různě velkých kontejnerů. Nezasvěcený by si myslel, že je tu výměník tepla nebo podobná nezajímavá součást zázemí. Místo toho je v jednom z kontejnerů namačkán superpočítač Anselm.

Kontejnery se superpočítačem vypadají nenápadně.

Kontejnery se superpočítačem vypadají nenápadně.

Jde vlastně o dočasné řešení, které umožnilo velmi rychlé nasazení bez náročných stavebních prací. Momentálně se ale staví nová budova, do které superpočítač přesuneme, říká Jansík. Potřeba nasazení velké výpočetní kapacity byla ale v Česku tak velká, že se autoři projektu rozhodli nečekat na dokončení budovy a počítač postavili dočasně v kontejneru. Už teď je využitý na sto procent, což dokládá potřebnost takového projektu.

Na evropské poměry není počítač příliš velký, v současné době ho tvoří 209 výpočetních uzlů s celkovým výkonem asi 90 Tflops. Jde o počítače klasické architektury Intel x86_64, ale optimalizované na co nejvyšší výpočetní výkon. Když bych výkon celého clusteru porovnal se svým notebookem, byl by superpočítač asi 6500krát výkonnější, uvádí Jansík. Nejde o jediný takto velký počítač v České republice, například Škoda auto má výpočetní kapacitu podobné velikosti. Záleží hodně na tom, zda počítáte agregovaný výkon nebo počet jader. V každém případě Anselm patří mezi největší superpočítače v Česku.

Po odemčení branky se zastavujeme u čtyř velkých hučících beden. Jsou to chladiče, které odebírají teplo z chladicí kapaliny. Každý z nich má maximální příkon 20 kW a je schopen uchladit 60 kW tepelného výkonu. Jsou zapojeny redundantně a každý z nich má dva okruhy: kondenzační a free coolingový. Ten první vyžaduje použití kompresoru, ten druhý chladí okolním vzduchem. Funguje to ale jen do teploty 14 stupňů Celsia, pak nastupuje kompresor, popisuje chlazení Dvořáček.

Dva autonomní chillery.

Dva autonomní chladiče.

Systémem probíhá nemrznoucí směs vody a propylenglykolu, ale servery jsou ochlazovány klasicky proudícím vzduchem. Samotné počítače jsou chlazené vzduchem, ale ten pak ženeme přes zadní dveře racku, které jsou naplněné vodou. Ta se ochlazuje právě tady, vysvětluje nám pan ředitel Jansík. Celý počítač má spotřebu asi 100 kW, takže dobré chlazení je nutností. Kdybychom ho vypnuli, byli bychom rychle pečení do měkka, dodává s humorem. Celkem je v oběhu 3500 litrů chladicí vody.

Prohlížíme si dva teploměry, na jednom je vidět vstupní teplota a na tom druhém výstupní. Bohužel v tuhle chvíli není teplo nijak využíváno. V tomto mobilním datovém centru na to nebyl prostor. Mnohá superpočítačová centra se o to snaží, ale většina z nich to nemá vyřešené. Přesto to možné je, například ve Stockholmu jsou některá datová centra připojená k městskému rozvodu a prodávají městu přebytkové teplo. Naše plány zatím nejsou tak daleko, ale chceme část tepla využívat k vytápění nové budovy, vysvětluje Jansík.

Teplota vody před vstupem do počítače.

Teplota vody před vstupem do počítače.

Největší technickou překážkou je nízká teplota výstupní vody. V případě Anselmu je teplotní spád zhruba 14 a 18 stupňů, takže voda protékající trubkami je poměrně studená. To platí o současné technologii chlazení použité v Anselmu. Pomocí přímého chlazení vodou (DLC) lze dosáhnout teploty výstupní vody až 40 stupňů, říká Dvořáček.

Vstupujeme do jednoho z kontejnerů, který je plný baterií na šesti regálech. Tohle je UPS pro případ výpadku napájení, akumulátory udrží superpočítač v chodu po dobu 18 minut, ale krátce po výpadku naskakuje 200kW diesel agregát, který má nádrž na devět hodin, říká Josef Dvořáček. Upozorňuje nás na účinné tlumení hluku, které dovoluje provoz agregátu uvnitř zástavby.

Pohled na baterie a výdech klimatizace nad nimi.

Pohled na baterie a výdech klimatizace nad nimi.

UPS funguje za normálních okolností v nejúčinnějším režimu, kdy je přímo energie ze vstupu pomocí elektronického bypassu převedena do datového centra. V případě nepravidelností v síti přejde napájecí soustava do režimu dvojité konverze, kdy je vstupní napětí usměrňováno a poté je opět převedeno na střídavé. K přechodu mezi těmito dvěma režimy dochází velmi rychle, v průběhu jedné periody průběhu síťového napětí, vysvětluje Josef Dvořáček. Protože baterie samy o sobě generují zbytkové teplo, jsou i v tomto kontejneru instalovány dvě samostatné klimatizace systému vzduch-vzduch s nezávislým dohledem.

Poté už se přesouváme do hlavního kontejneru, ve kterém je namačkán samotný superpočítač. Racky jsou tu skutečně velmi blízko u sebe, což je možné právě díky použitému chlazení. Není potřeba nechávat prostor pro studené a teplé uličky jako v případě jiných datacenter chlazených vzduchem. Ani hluk tu není příliš velký a neofukuje nás mrazivý vzduch.

Chodbou projde stěží jeden člověk.

Chodbou projde stěží jeden člověk.

Má to své výhody i z hlediska integrace velkého výpočetního výkonu na malém prostoru. Všeobecným trendem je maximalizace energetické a výpočetní hustoty na co nejmenší ploše. Systémy jsou stále výkonnější a zabírají méně prostoru, vysvětluje nám ředitel Jansík. V jednom racku tu může být instalováno zařízení s tepelným výkonem až 40 kW. Rozložení ale není rovnoměrné, pásková knihovna má poměrně nízkou a stálou teplotu, zatímco výpočetní uzly topí výrazně více a navíc v závislosti na prováděné úloze.

Anselm obsahuje několik druhů uzlů. Nejčastěji jsou zastoupené CPU uzly, které provádějí výpočet přímo na procesoru. Každý z těchto uzlů obsahuje dva osmijádrové procesory Xeon Sandy Bridge taktované na 2,4 GHz. Kromě toho tu máme 23 výpočetních uzlů akcelerovaných kartami Nvidia a čtyři akcelerované kartami Intel MIC, doplňuje Josef Dvořáček.

Jednotlivé počítače velkého superpočítače.

Tyto karty obsahují výpočetní procesor Xeon Phi se šedesáti dvěma programovatelnými jádry a pomocí dodávaných knihoven je možné na nich spouštět náročné výpočetní úlohy napsané v C nebo Fortranu. Kromě toho je možné přímo na kartě spustit upravenou linuxovou distribuci a přímo v ní počítat. CPU samotného počítače se pak používá jen k předávání dat pro kartu, vysvětluje Josef Dvořáček zajímavou technologii současných výpočetních karet.

Podle Branislava Jansíka je možné z každé takové karty dostat až 1 Tflops výkonu. My máme v tuto chvíli v serverech po jedné kartě, poměrně běžné je ale osazovat výpočetní uzel i dvěma kartami. V jednom výpočetním centru jsme viděli dokonce tři v jednom serveru, ale není to běžné, vysvětluje Jansík. Podle jeho slov ale šlo o velmi neobvyklé řešení, které bylo nasazeno jen v počtu dvaceti kusů.

Josef Dvořáček nám otevírá jeden z racků a odhaluje těžké dveře naplněné vodou. Z vnitřní strany vidíme husté žebrování a za ním velké ventilátory ženoucí vzduch na dveře. V každé úrovni je teplotní čidlo, měřící teplotu vzduchu vystupujícího z toho kterého patra v racku. Podle změřených hodnot se pak řídí otáčky ventilátorů. O to se stará řídící deska, na které běží Linux, chlubí se technik. Na základě zjištěné teploty se reguluje otevření trojcestného ventilu a zároveň otáčky ventilátorů. Po chvíli postávání u otevřených dveří skutečně jednotka zaznamená vyšší teplotu vzduchu a hluk se mírně zvýší.

Masivní žebrování chladících dveří.

Žebrování masivních chladicích dveří.

Celý výpočetní cluster Anselm je poháněn linuxovou distribucí Bullx Linux založenou na balíčcích RPM. Proti běžným distribucím udržujeme jen omezenou sadu aplikací, v takovém výpočetním centru nemá smysl provozovat desktopové aplikace nebo ovladače pro Bluetooth, říká Dvořáček.

Zajímavostí je technologie synchro ping – scheduler synchronization, která umožňuje synchronizovat jaderné plánovače v jednotlivých uzlech. Funguje to tak, že management server posílá po síti broadcasty, které synchronizují práci plánovačů, popisuje Dvořáček. Na každém serveru totiž běží malá část servisních procesů, které je vhodné odbavovat na všech uzlech současně, aby se nepletly do práce samotným výpočetním aplikacím. Aplikace by pak na sebe musely v náhodných intervalech čekat, což by zbytečně rozkolísalo výkon celého superpočítače. Díky synchronizaci tak všechny plánovače naráz odbaví systémové procesy a zbytek času je pak možné nerušeně počítat.

Diagram vysvětlující synchronizaci uzlů

U takové výpočetní sítě hraje vedle výkonu jednotlivých uzlů také velkou roli schopnost jejich rychlé komunikace. V tomto případě je použita síť InfiniBand, která nabízí velmi nízkou latenci a vysokou přenosovou rychlost, dodává Josef Dvořáček. Data běží po optických kabelech rychlostí 40 Gbps, což dává reálnou přenosovou rychlost asi 3500 MB/s. U některých typů aplikací je rychlost výpočtu limitována právě propustností sítě, říká Jansík.

InfiniBand přivádí data k jednotlivým uzlům rychlostí 40 Gbps.

InfiniBand přivádí data k jednotlivým uzlům rychlostí 40 Gbps.

Jednotlivé počítače si mohou data předávat pomocí distribuovaného souborového systému Lustre. Jeho největší výhodou je prakticky neomezená škálovatelnost díky oddělení metadat. Ta se ukládají na jiná úložiště než samotný obsah souborů. Klienti jsou oddělení od fyzických úložišť, protože požadavky nejprve zpracovává Lustre server a výsledek teprve předá klientovi, vysvětluje technické detaily Josef Dvořáček. Protože jde o distribuovaný souborový systém, klienti mají vždy několik cest ke svým datům a nedochází tak ke kolizím při snaze si je od storage serverů vyzvednout. Projevují se tu tedy podobné efekty jako u RAID 0.

Pak si ještě prohlížíme hasicí systém, který využívá plynu tlumícího hoření pomocí snížení koncentrace kyslíku ve vzduchu. Není jedovatý ani jinak zdraví škodlivý, ale zároveň není přirozenou složkou vzduchu, a proto hygienické předpisy nedoporučují dlouhodobý pobyt v takovém prostředí. Celé prostředí je neustále sledováno systémem VESDA, který opticky odhalí ve vzduchu mechanické částice a kouř (obecně aerosoly) uvolňované při hoření. Při poslední procházce kontejnerem nás zaujmou malé elektrické přímotopy. Ty tu nemáme proto, že by bylo potřeba přitápět, vysvětluje nám Branislav Jansík. Je to pro případ, že bychom museli superpočítač vypnout. Pak hrozí riziko, že teplota klesne k rosnému bodu, což nemůžeme dovolit, dodává a všichni opouštíme ševelící kontejner.

bitcoin_skoleni

Ventil hasicího systému.

Výkonná jednotka hasicího systému.

Ostravské výpočetní centrum má už konkrétní plány na nejbližší budoucnost. Do nově postavené budovy chystá přesunout Anselm, ale zároveň k němu postavit druhý systém. Brzy by mělo být vyhlášeno výběrové řízení, jehož vítěz pro nás postaví další superpočítač s celkovým výkonem 1 Pflops, vysvětluje Jansík. Nový systém tak bude zhruba desetkrát výkonnější než současný Anselm. Do nových prostorů by se měly technologie stěhovat v polovině roku 2015.

Opouštíme malý oplocený prostor a míříme k autu. Náhodný kolemjdoucí by si mohl myslet, že se za plotem v těch několika kontejnerech ukrývá tepelný výměník nebo místní trafostanice. Místo toho je tu jeden z nejvýkonnějších superpočítačů v Česku. Až pojedete kolem Ostravy, zajděte se na něj podívat.

Autor článku

Petr Krčmář pracuje jako šéfredaktor serveru Root.cz. Studoval počítače a média, takže je rozpolcen mezi dva obory. Snaží se dělat obojí, jak nejlépe umí.