Riaditeľ Centra spoločných činností SAV Lukáš Demovič v rozhovore pre portál Veda na dosah hovorí o superpočítačových plánoch Slovenska.
V bulharskom Sofia Tech Parku spustili v júni Discoverer, najvýkonnejší superpočítač vo východnej Európe, v Luxembursku v tom istom období ožila MeluXina. Tá sa tesne po svojom spustení stala aj najzelenším superpočítačom v Európe a štvrtým najzelenším počítačom na svete.
Bulharský počítač vznikol v rámci projektu EuroHPC JU (Spoločný európsky podnik pre vysokovýkonné počítače), ktorého členom je aj Slovensko.
V rámci tohto projektu sa v Európe vybuduje 8 superpočítačov. Tri z nich predstavujú z hľadiska výkonu superpočítače prvej triedy, takzvané pre-exascale, a ďalších päť patrí do druhej triedy, teda skupiny petascale superpočítačov. Bulharský Discoverer patrí do druhej skupiny, rovnako ako MeluXina (Luxembursko), Karolina (Česko), Vega (Slovinsko) a Deucalion (Portugalsko).
„Slovenský superpočítač Aurel sa ešte trápi, ale za normálnych okolností by už bol odpísaný. Ak všetko pôjde dobre, koncom roka by sme mohli „vysúťažiť“ jeho nasledovníka. Malo by ísť o stroj kúsok pod úrovňou petascale,“ vysvetľuje v rozhovore Lukáš Demovič, riaditeľ Centra spoločných činností SAV.
Ako sa má Aurel?
Aurel je už starý stroj. Má 9 rokov, český superpočítač Anselm bol nainštalovaný rok po Aurelovi a skončil minulý rok, je v múzeu. Aurel má vážne poruchy a to je problém, lebo sa naň nedajú zohnať náhradné diely.
Netrpezlivo teda čakáme, kedy ho nahradíme novým strojom. Už máme alokované peniaze a schválený projekt, máme nachystané verejné obstarávanie. Keď prebehne kontrola, sme prichystaní ho rýchlo „vysúťažiť“.
Zatiaľ sa spoliehame na ostatné stroje, ktoré máme k dispozícii. Okrem Aurela sme v rovnakom čase postavili aj sedem menších systémov, ktoré sú v Košiciach, Banskej Bystrici, Žiline, a aj v Bratislave sú nejaké ďalšie, čiže našich používateľov smerujeme na tieto zariadenia. A, samozrejme, aj v zahraničí postupne rastú nové a nové stroje, ktoré sú k dispozícii.
Stihnete to ešte tento rok?
Projekt sa zdržal kvôli tomu, že nová vláda kontrolovala všetky IT projekty. Ak by ale všetko išlo bez problémov, do konca roka by mohol byť nový počítač „vysúťažený“ a v tom momente môžeme začať chystať prípravu.
Aký je výber? Výrobe superpočítačov sa asi nevenuje každá počítačová firma. Je nejaký významný rozdiel v parametroch, ktoré jednotlivé firmy ponúkajú?
Výber je pomerne veľký. Superpočítače nerobí každá spoločnosť, ale povedzme, že existuje 4 či 5 väčších a viacero menších, ktoré sa tomu venujú.
Výber závisí najmä od toho, čo potrebuje prevádzkovateľ. Superpočítač môžete nastaviť veľmi rôzne. Výsledok závisí od toho, aký je pomer medzi bežnými procesormi – takými, aké máte v notebooku alebo v desktope – a takzvanými akcelerátormi, ktoré si môžete predstaviť ako špecializované grafické karty, ktoré slúžia na špeciálne výpočty a napríklad na AI aplikácie alebo strojové učenie.
Od tohto potom závisí, čo dodávateľ nakombinuje a ako je schopný to technicky prepojiť. Výrobcov základných komponentov nie je až tak veľa, máme troch hlavných výrobcov procesorov a dvoch výrobcov akcelerátorov, takže tam až tak veľa možností nie je.
Existuje však veľa možností, ako tieto časti prepojiť a pridať ostatné, napríklad diskové polia, chladenie, ktoré je veľmi dôležité, alebo napájanie. Najdôležitejšou úlohou dodávateľa je zintegrovať systém tak, aby bol čo najlepšie nahustený a najefektívnejší.
Čo je superpočítač? Je správna predstava, že ide o obrovskú kalkulačku, do ktorej nalievame obrovské množstvo dát a ona, ak sa správne spýtame, vie nájsť odpoveď?
Áno, v zásade je to správna predstava. Ako pri každej práci na počítači, tak aj pri práci na superpočítači treba vedieť, čo robíte, čo má byť výstupom a aká je možná chyba.
Aké typy úkonov teda takýto počítač robí?
V oblasti vedy existujú tri najväčšie rámcové možnosti využitia. Prvou skupinou je spracovanie dát. To je to, čo sa deje napríklad v CERN-e. Urýchľovač častíc produkuje obrovské terabajty dát a tie sa potom posielajú do menších superpočítačov po celej Európe, kde sa spracúvajú. Jeden takýto počítač je napríklad v Košiciach.
Ďalším príkladom je genomika. Keď sekvenujete DNA, máte k dispozícii obrovské množstvo dát, ktoré treba spracovať; napríklad nájsť nejaké vzorce či opakujúcu sa sekvenciu v číselnom rade. Alebo zisťujete fylogenetickú štruktúru a porovnávate DNA z viacerých vzoriek a hľadáte prienik. Výsledkom je, že zistíte, akého spoločného predka mali organizmy, z ktorých pochádzajú vzorky a kedy to bolo.
Druhou oblasťou sú simulácie, ktoré sú potrebné v každom vednom odvetví. V astrofyzike sa využívajú napríklad na modelovanie galaxií, ich kolízií, čiernych dier alebo vzniku vesmíru. Pri takýchto simuláciách vedci potrebujú tie najvýkonnejšie počítače.
Simulácie sú ale užitočné aj v bežnej fyzike alebo v materiálových vedách, keď pomocou nich môžete vymodelovať nové materiály, ich štruktúru i zloženie a skúmate ich vlastnosti – akú majú vodivosť či odolnosť.
Ďalšou oblasťou je napríklad vývoj nových liekov, kde môžete na základe simulácií skúmať interakciu liečiva s proteínmi či enzýmami pomocou molekulovej dynamiky. Vstup je pri tejto metóde relatívne malý – poviete, akú by mal mať model štruktúru a necháte stroj, aby ho vyvinul. Robí to pomocou systému rovníc, ktoré hovoria, ako systém interaguje.
Čím menší medzikrok medzi jednotlivými simuláciami potrebujete dosiahnuť, tým väčší je nakoniec celý systém, a tým viac narastá potreba výpočtovej kapacity počítača.
Výhodou je, že namiesto toho, aby ste v laboratóriu mesiace skúšali rôzne kombinácie látok, v počítači vyberiete také, ktoré by mohli mať potenciál a pomocou metód kvantovej chémie i molekulovej dynamiky viete veľmi presne povedať, ako sa molekuly budú správať a aké budú mať vlastnosti. Potom si vyselektujete napríklad sto najsľubnejších a skúmate ich ďalej.
Poslednou oblasťou je strojové učenie a umelá inteligencia. Môže ísť napríklad o spracovanie obrazu, pri ktorom vytvoríte model, ktorý nakŕmite obrovským množstvom dát a postupne ho učíte, čo chcete, aby vedel.
V princípe ide vždy o to, že do počítača potrebujete dostať nejaký vstup, musíte mu povedať, ako sa má správať. Ak ide napríklad o simuláciu fyzikálneho javu, musíte do vstupu dostať fyzikálne rovnice, ktorými sa má riadiť. Potom nastavíte podmienky. Počítač nevie odpovedať na všeobecné otázky, vždy musíte veľmi presne vedieť, čo od neho chcete. V závere potrebujete vždy ľudský faktor, aby vyhodnotil výsledok.
Ako je na tom s parametrami napríklad bulharský Discoverer? Aký bude v porovnaní s ním náš budúci superpočítač?
Ten náš by sa mal nachádzať kúsok pod úrovňou petascale. Náš rozpočet je približne 2,5 milióna eur, Bulhari na to mali približne 10 miliónov. Porovnanie výkonnosti počítačov je však špecifické. Každý sa pozerá na jedno číslo, ktoré voláme Flops (floating point operation per second). Hovorí, koľko operácií v plávajúcej desatinnej čiarke je počítač schopný spraviť za sekundu.
Flops sa meria na konkrétnom teste. Je to špeciálna maticová operácia, ktorá rieši veľmi zložitú rovnicu, ale nemusí úplne nutne reprezentovať všetky typy aplikácií, ktoré sa na počítači používajú.
Test významne favorizuje počítače, ktoré sú masívne osadené akcelerátormi. Akcelerátor vám za rovnaké peniaze dodá papierovo viacej výkonu ako procesor, ale nebude tak univerzálne použiteľný ako bežný procesor. Niektoré aplikácie dokonca tieto akcelerátory nevedia používať.
Okrem spomínaných petascale superpočítačov sa momentálne chystá pôda aj pre tri pre-exascale superpočítače, ktoré budú asi 10- až 50-násobne výkonnejšie ako ten v Bulharsku alebo v Česku. Tri takéto počítače budú v Taliansku, Španielsku a vo Fínsku.
Prvý petascale superpočítač v rámci siete EuroHPC – Vega – bol spustený v Slovinsku v marci a už sa dá na ňom žiadať o strojový čas. Ak by mali teda slovenskí výskumníci záujem, na našej stránke kompetenčného centra nájdu linky, v prípade potreby im vieme poskytnúť pomoc.
Ako funguje používanie superpočítačov v praxi?
K superpočítaču sa môžete pripojiť z akéhokoľvek počítača, k stroju sa fyzicky nedostanete. Z bezpečnostných dôvodov by vás k nemu nepustili. A aj tak by vám to bolo na nič, nemá klávesnicu ani monitor, je to veľká skriňa plná káblov.
Niektoré superpočítače však vyzerajú mimoriadne elegantne.
Najkrajšia inštalácia bola doteraz v Barcelone. Počítač Mare Nostrum (Naše more) bol umiestnený v starej sekularizovanej kaplnke v areáli Technickej univerzity. Nový počítač bude však asi na inom mieste, lebo sa do kaplnky už nezmestí.
Ale späť k praxi – pripojiť sa môžete odkiaľkoľvek, potrebné programy máte nainštalované vo svojom počítači. Problematický môže byť presun veľkého množstva dát. V súčasnosti sa veľa investuje do prepojenia datacentier. Pokiaľ máte dobré prepojenie, nemáte problém a môžete rovno pracovať. Ak však máte dáta niekde, odkiaľ ich neviete do stroja dostať rýchlo, musíte rátať so zdržaním a počkať aj niekoľko dní, kým dáta „natečú“. V špecifických prípadoch, ak nie ste ďaleko a dát je naozaj veľa, sa môže oplatiť ich priniesť na nejakom médiu.
Napríklad na simulácie vstupných dát až tak veľa nepotrebujete, naopak, v priebehu simulácie sa veľa dát vytvára. A tie zostávajú a spracúvajú sa v superpočítači.
Na prácu na superpočítači nepotrebujete nič špeciálne, používate tradične príkazový riadok. Počítač nepracuje v exkluzívnom režime, nepoužíva ho v danom čase jeden používateľ, zdieľajú ho medzi sebou viacerí používatelia. Ak si chce používateľ spustiť úlohu, musí si zadefinovať, koľko potrebuje procesorov.
Ako sa na používanie pripraviť? Ako sa to naučiť?
Na stránke je podrobný návod, ktorý by mal zvládnuť každý so základmi práce s dátami. A, samozrejme, existujú prípravné fázy, v ktorých si používatelia môžu otestovať aplikáciu. V rámci tejto fázy dostane žiadateľ prípravný prístup na počítač, kde si môže vyskúšať, ako aplikácia funguje, škáluje alebo aký je optimálny počet procesorov, ktoré bude potrebovať.
Nie všetky aplikácie škálujú lineárne, nie je to teda vždy tak, že čím zadáte viac procesorov, tým sa priamo úmerne zníži čas výpočtu. Zo žartu používame ako príklad kopanie jamy. Keď jeden robotník kope jamu hodinu, 3600 robotníkov nevykope jamu za sekundu.
Treba nájsť nejaké optimum. Skúsený používateľ vie, koľko procesorov si má žiadať. Tí najskúsenejší sledujú, čo sa na počítači deje. Keď zbadajú nejaké okno, zmenšia si problém, ktorý chcú riešiť, aby sa vtesnali do nejakej medzery. Existuje prehľad, v ktorom vidíte, aké je momentálne vyťaženie počítača, koľko je voľných prostriedkov.
Keď si zvolíte parametre, tak svoju „úlohu“ zaradíte do špeciálneho frontovacieho systému, ktorý pre ňu hľadá miesto. Ak by ste si vypýtali úplnú hlúposť, napríklad viac procesorov, ako stroj má, systém vás na to upozorní.
Keď zadáte, naopak, požiadavku na príliš málo procesorov a vaša úloha by vám nezbehla (pretože okrem počtu procesorov zadávate aj maximálnu dĺžku trvania danej úlohy), uloží sa tam, kde sa zastavila a neskôr v nej môžete pokračovať.
Úlohy sa zaraďujú do tried podľa toho, či trvajú pár hodín alebo viac dní. Málokedy vám však správa centra dovolí spúšťať úlohy, ktoré trvajú dlhšie ako deň či dva. Komplikuje to totiž prevádzku a blokuje ostatných používateľov. Úlohy štandardne treba nastavovať tak, aby zbehli do dňa.
Ak úloha nestihne dobehnúť, používateľ si doobjedná strojový čas?
Keď si objednávate strojový čas, napíšete si akoby malý projekt. Definujete v ňom, čo potrebujete robiť, čo má byť výstupom, aké programy na to potrebuje, prečo potrebujete superpočítač, prečo nestačí použiť menší stroj. A potom vám prevádzkovateľ pridelí počet strojových hodín.
Manažujete si ho podľa toho, aké úlohy robíte a aký čas na to potrebuje. Čas, ktorý dostanete, by vám mal stačiť na úlohu, ale aj na nejaké opravy chýb či opakovanie. Keď nie, tak si vypýtate ďalší.
Ako bol vyťažený Aurel?
Vždy na maximum. Ale Aurel nemal až taký veľký výkon a na Slovensku máme používateľov, ktorí vedia vyťažiť kapacitu akéhokoľvek superpočítača. V rámci Plánu obnovy má byť na Slovensku postavený jeden z najvýkonnejších počítačov v Európe. Keď som o tom hovoril zástupcom Fyzikálneho ústavu a spomínal im, že budeme mať konečne stroj, ktorý uspokojí ich potreby, tak sa len pousmiali. Požiadavka na výkon stroja stúpa s požiadavkou na presnosť a na počet výpočtov.
Používatelia sa v podstate regulujú sami. Ak vidia, že na stroj čaká veľa ľudí, idú inam. Ale vo všeobecnosti Aurelova kapacita málokedy stačila na to, aby sme uspokojili všetkých.
Môžu sa superpočítače mýliť?
Nie, stroj ako taký sa mýliť nemôže. On zráta presne to, čo ste mu zadali. Omylní sme my, ľudia. Niekedy sa, samozrejme, stane, že počítač nevie vypočítať, čo od neho chceme. Existuje totiž veľa úloh, ktoré sú iteratívne, teda výsledok sa spresňuje pri každom ďalšom kroku. Vtedy sa môže výpočet skomplikovať a potom sa používateľ musí pohrať so vstupmi, s modelom. Môže sa stať, že rátate dva dni a výsledok môžete zahodiť a spustiť výpočet odznova. Niekedy je to dosť komplikované. Navyše v programoch sú parametre, podľa ktorých si môžete skontrolovať, či je váš výsledok spoľahlivý alebo nie. Vždy preto zdôrazňujem, že v procese musí byť prítomný ľudský faktor.
Ako sú superpočítače chránené z hľadiska kybernetickej bezpečnosti?
Ak opomenieme fyzickú ochranu, teda fakt, že sa k počítaču fyzicky nedostanete, každý z týchto počítačov má veľmi efektívnu a rozsiahlu ochranu. V systéme je všetko, čo sa dá, uzatvorené a všetky porty, cez ktoré sa môžu používatelia prihlásiť, sú niekoľkonásobne zabezpečené. Okrem mena a hesla sa na prihlasovanie využívajú rôzne typy bezpečnostných kľúčov, ktoré chránia systém pri úniku hesla.
Superpočítače môžu byť zaujímavé aj pre bežného hackera, lebo napríklad spomínané akcelerátory sú vynikajúcim nástrojom na ťažbu kryptomien.
Stalo sa to už niekedy?
Myslím, že minulý rok sa takýto incident stal v rámci Európy, ale z pochopiteľných dôvodov sa o tom príliš nehovorí.
Superpočítače sú postavené na trocha odlišnom princípe ako iné počítače. Majú kontrolnú jednotku, akýsi mozog, a tam je všetko. Samotné servery nemajú ani disky, načítavajú si operačný systém po sieti z tohto mozgu a vždy, keď sa reštartujú, načítajú si čerstvý obraz operačného systému.
Samozrejme, napriek všetkým bezpečnostným opatreniam stále existuje riziko, že veľmi skúsený hacker by do systému preniknúť mohol. Aj preto nadväzujeme spoluprácu s Národným bezpečnostným úradom a chceme, aby sa stal naším partnerom. Superpočítač, ktorý by sme mali získať vďaka prostriedkom z Plánu obnovy, bude veľkým lákadlom, a preto ho budeme musieť naozaj veľmi precízne zabezpečiť.
Kedy bude aktuálny superpočítač z Plánu obnovy?
Momentálne by sme takýto počítač na Slovensku ani nemali kam dať. Nemáme také datacentrum, ktoré by ho dokázalo prevádzkovať, v Európe ich je len niekoľko. Najprv teda musíme pripraviť pôdu, otestovať to v malom a tak o 3 či 4 roky by to mohlo byť reálne.
Ak sa ktokoľvek, kto to potrebuje, môže pripojiť k akémukoľvek superpočítaču na svete, prečo je dôležité, aby malo Slovensko svoje vlastné stroje?
Je to otázka prestíže, ale aj bezpečnosti a rozvoja. Staneme sa súčasťou európskej siete, ktorá bude mať väčšiu kapacitu aj vďaka nám. Dnes je väčšina výkonu superpočítačov mimo Európy – v USA, Číne a Japonsku.
A to znamená, že európski výskumníci, ale aj bežní používatelia majú svoje dáta mimo EÚ. Je to teda okrem iného aj otázka bezpečnosti. Ak robíte nejaký vývoj, nechcete, aby vaše dáta, ktoré môžu byť citlivé, boli niekde, kde neviete, čo sa s nimi deje.
Rovnako sa na to môžeme dívať aj z pohľadu Slovenska. Chceme mať suverenitu a potrebujeme mať vlastný výkon.
Ale dôležitá je aj praktická otázka – keď si žiadate o strojový čas v zahraničí, musíte byť na nejakej úrovni, k strojovému času tam nepustia hocikoho. Jedným z cieľov, ktoré bude mať nástupca Aurela, je, aby rástol slovenský ekosystém a používatelia sa učili pracovať na superpočítačoch.
Má na Slovensku o superpočítače záujem aj súkromná sféra?
Na Slovensku je používateľov z biznisu málo v pomere k tomu, aký máme potenciál. Ale aj u nás existuje skupina firiem, ktoré stroje využívajú.
Je medzi nimi spoločnosť, ktorá pracuje s genomickými analýzami, firma, ktorá sa venuje spracovaniu satelitných snímok do aplikácií, alebo firma, ktorá robí predpovedné modely počasia na menšom území.
Superpočítače za hranicami využívajú vo veľkom napríklad automobilky – na vývoj nových materiálov, modelovanie súčiastok a aerodynamiku.
Superpočítače sú extrémne energeticky náročné. Aký je vývoj v tejto oblasti?
Je to tak, okrem samotného výkonu počítača je extrémne energeticky náročné aj jeho chladenie. Všade na svete sa vedci snažia hľadať čo najúspornejšie riešenia. V Austrálii je datacentrum, ktoré má veľkú časť datacentra pokrytého solárnymi panelmi. Nový fínsky superpočítač by mal mať všetku energiu z hydroelektrární. Stratové teplo, ktoré počítač vyprodukuje, budú posielať do blízkeho mesta na vykurovanie.
Vždy ide o kompromis – na juhu je síce teplo, ale je tam veľa solárnej energie. Na severe veľa slnka nie je, ale zasa je jednoduchšie chladenie.
Ako sme na tom s ľudskými zdrojmi v oblasti superpočítačov? Máme na Slovensku dosť ľudí, ktorí vedia tieto stroje manažovať, opravovať či obsluhovať?
Administrácia superpočítačov nie je až taká náročná a snažíme sa si ľudí vychovať. Výkon však bude rásť a máme ambíciu stavať naozaj veľké stroje. Dúfam, že sa nám na to podarí postupne pripraviť.
Kto v súčasnosti tieto stroje u nás najviac využíva?
Používatelia sú najmä zo SAV a z univerzít. Hlavne UK a STU majú silné skupiny používateľov. Väčšinou sú z odborov fyzika či chémia, ale pribúdajú aj ďalšie vedecké smery.
Mohlo by to však byť oveľa lepšie a robíme všetko pre to, aby počet používateľov na Slovensku rástol. Veľa ľudí napríklad o možnosti využívania superpočítačov stále nevie. V porovnaní s Európou sme na tom v počte používateľov slabo. Dá sa povedať, že zrkadlíme slovenskú vedu. Máme vynikajúce tímy a vynikajúcich jednotlivcov, ale všeobecne je to priemerné. Dúfame, že sa nám podarí túto situáciu postupne zmeniť. Pomôžu, samozrejme, nové stroje, ale aj lepšia komunikácia.