HPC Portré-dr. Legeza Örs
A Szilárdtestfizikai és Optikai Intézet tudományos tanácsadója, a Wigner Fizikai Kutatóintézet Erősen Korrelált Rendszerek „Lendület” Kutatócsoport alapítója, az MTA doktora és az MTA Akadémiai díjának (2021) tulajdonosa. A müncheni Maximilian Ludwig Universität és a berlini Freie Universität elméleti fizikai intézetének Humboldt-díjas vendégkutatója, a marburgi Philipps Egyetem vendégprofesszora, a Müncheni Műszaki Egyetemen Hans Fischer-díjas kutató, valamint a Kormányzati Informatikai Fejlesztési Ügynökség HPC-szakértője. Legfontosabb kutatási területe a tenzorhálózat-állapoti módszerek fejlesztése kvantuminformatikai módszerek segítségével, majd ezek alkalmazása erősen korrelált kvantumos sokrészecske-rendszerekre.
Hogyan ismerkedett meg a szuperszámítástechnikával?
Nekem az volt a meghatározó pillanat, amikor először láttam bekapcsolt számítógépet. Amikor gyerek voltam, még nagyon kevés számítógép volt az országban. Ötödikes koromban kerültem kapcsolatba a számítástechnikával, nagyon hamar beleszerettem, egy évvel később már én vezettem az iskolai szakkört. A szuperszámítógépig hosszú az út, mert a számítógépek felhasználási köre nagyon szerteágazó. Vannak kész applikációk bizonyos feladatokra, de vannak olyanok is ahol lehet fejleszteni, bővíteni, mert a szoftvereken belül vannak lehetőségek különböző kombinációkra, össze lehet fűzni különböző funkciókat és újabbakat generálni. A következő lépés az, hogy az ember elkezdi maga fejleszteni ezeket, innen jön a programozás. Itt is nagyon szerteágazóak a lehetőségek, vannak alacsony és magas szintű programnyelvek, minden attól függ, hogy ki milyen mélyen szeretné beleásni magát. A kérdés az, hogy eljut-e odáig, hogy a hardver is érdekelje. Ez összefügg azzal, hogy milyen típusú feladatokat szeretne megoldani, és azoknak mekkora az erőforrásigénye, tehát a megoldandó feladat skálázódása nagyon fontos kérdés. Az lesz HPC-felhasználó, akinek olyan feladata van, ahol vagy az adatmennyiség óriási és folyamatosan nő, vagy a kiértékelési időnek kell minél rövidebbnek lennie, mert folyamatosan döntéseket kell hozni, és nem várhat a megoldásra órákat, heteket vagy akár egy évet.
Mi volt az első szuperszámítógépes élménye?
Gimnazistaként voltam Amerikában négy évet, és ott jártam egyetemre is, az Ohio State University diákjaként kerültem kapcsolatba szuperszámítógépekkel. Voltak előadások, meg lehetett nézni, akkor még a méretük is más volt, a Cray-eken volt egy pad, le lehetett ülni rá. De az egy dolog, hogy van egy szuperszámítógépünk, az a kérdés, mit csinálunk vele, mi az a program, amit használunk. Egészen másképp kell programozni egy olyan gépet, amiben egy-két mag fut, vagy amiben 20-40, és az még mindig csak egyetlen egy gép. Amikor ezeket összefűzzük és kommunikálnak egymással, rengeteg kérdés merül fel. Tehát a szuperszámítógép nagyon jó dolog, de olyan alkalmazások is kellenek, amik rájuk vannak szabva, hogy hatékonyan ki tudjuk használni a több tízezer számítási mag nyújtotta lehetőségeket.
Ön mire használja a szuperszámítógépet?
Kvantumfizikus vagyok, tehát a kvantumrendszerek szimulációjával foglalkozom. A kvantumrendszerek matematikai, fizikai tulajdonságait szeretnénk megérteni, illetve ezeknek a kombinációival újabb rendszereket kitalálni és tervezni. Ezek nagyon komoly matematikai modellek, a matematika és a fizika határmezsgyéje, alkalmazott matematika, elméleti fizika. A kvantumos rendszerek szimulációi szuperszámítógépet igényelnek, mert az erőforrásigény exponenciálisan skálázódik. Minél nagyobb rendszereket szeretnénk szimulálni, hogy megértsük a kísérleti eredményeket, vagy javaslatokat tegyünk kísérletek elvégzésére. Ha a kísérlet eredménye összhangban van az elmélettel, eljutunk az alkalmazott kutatáshoz, abból a termékhez, ami végül a hétköznapi életben is hasznosul.
Hogyan foglalná ezt össze egy laikusnak?
Az a lényeg, hogy a részecskék hullámként is viselkednek, és ha nagyon kicsi a méretskála, átfednek, tehát nem lesznek egymástól függetlenek és szükség van a kvantumfizikai leírásmódra. A részecskék közötti kölcsönhatás miatt bizonyos körülményeket változtatva, hangolva egészen más tulajdonságokkal tudjuk őket felvértezni. Az elektron egy ilyen kölcsönható közegben egészen másképp viselkedik, ilyen például a szupravezetés, amit nagyon régóta szeretnénk megoldani. A szupravezetők bizonyos hőmérséklet alatt ellenállás nélkül vezetnek, ennek a hőmérsékletnek az emelése alapvető cél.
Hogyan hasznosíthatóak az Ön eredményei?
Én olyan algoritmusokat fejlesztek szuperszámítógépes rendszerekre, amikkel szimulálni lehet a kvantumos rendszereket. Ennek az a célja, hogy olyan anyagok előállítására tudjunk javaslatot tenni, ami aztán a gyakorlati életben is hasznosítható, mint például a magas hőmérsékletű szupravezetés. A másik fő irány a kvantumszámítógép megvalósítása, többek között szuperszámítógépen végzett szimulációkkal próbáljuk megérteni és fejleszteni a működését.
Van olyan projektje, eredménye, ami megvalósíthatatlan lett volna szuperszámítógép nélkül?
Mind az. Olyan algoritmusokon dolgozunk, ahol az exponenciális skálázódást polinómiás skálázódásra redukáljuk, hogy meg tudjuk valósítani a kvantumrendszerek szimulációját klasszikus számítógépeken. Vannak ugyan olyan eredmények, amikhez elég egy hétköznapi számítógép, de a probléma nagysága és komplexitása miatt az általános cél esetében szinte mindig szuperszámítógépet használunk. Én a laptopomon is számolok, azon fejlesztek, utána azt átviszem egy nagyobb gépre, például az intézeti klaszterre, és ha ott is jól működik, akkor HPC-re. De a saját gépen létrehozott kis rendszereknél nem lehet megbízható, univerzális konklúziókat levonni, ezért mindenképp szükség van a szuperszámítógépeken elvégzett óriási számításokra.
Van alternatívája a szuperszámítógépnek? Megoldhatóak az Ön feladatai másképp?
A jelenlegi kutatások középpontjában az áll, hogy kvantumszámítógép biztosítson hasonló szimulációs környezetet. Pont ez az egyik kutatási területünk, a kvantumszámítógép programozása, de most az exascale tartomány elérése a legfontosabb. Két éve a Google elérte ugyan a kvantumfölényt, de ez csak egy nagyon speciális feladatra igaz, aminek egyébként jelenleg semmi gyakorlati alkalmazása sincs. Ráadásul ezeknek a rendszereknek a stabilitása nem megoldott, zajosak, és a hibakorrekció sokszor több kapacitást igényel, mint a számítás elvégzése.
Okozott Önnek bármilyen meglepetést a szuperszámítógép?
Nem. Amíg az ember eljut a szuperszámítógépekig, az egy nagyon hosszú folyamat. Nagyon sok mindent megtanul, és ez csak egy speciálisabb alkalmazási kör, amihez természetesen kell még tanulni. Nem megy egyik pillanatról a másikra, csak felkészülten lehet nekiállni.
Mennyire tartja kihívásnak a szuperszámítógép használatát?
Nagyon nagy kihívás! Ha megvan írva a szoftver, viszonylag egyszerű feladat, de a szuperszámítógépre fejlesztett alkalmazások nagyon bonyolult paraméterezést is tartalmaznak. Rengeteg mindent kell úgy beállítani, hogy a szuperszámítógépet, mint erőforrást, a lehető leghatékonyabban használjuk. Itt kell a felhasználó tapasztalat, amit az egyik kutató ad át a másiknak. Nagyon fontos, hogy utána monitoringozni kell, hogyan használta az alkalmazás a kapacitásokat. Előfordulhat, hogy valaki a kért erőforrásoknak csak a 20%-át használja fel, vagy olyan sok adatot mozgat, ami majdnem annyi időbe kerül, mint maguk a számítások. Nyilvánvalóan ezeket javítani kell. Ha a program lehetőséget biztosít a kalibrálásra, akkor a felhasználó ezeket át tudja állítani, és egyre hatékonyabban tudja az erőforrást kiaknázni. Ez mindenképp nagy kihívás, a feladatot hozzá kell igazítani az erőforrásokhoz, az erőforrásokat pedig a feladathoz.
Milyen gyorsan lehet megszerezni a szükséges ismereteket?
Attól függ, milyen típusú a felhasználás. Vannak egyszerű programok, vannak szofisztikáltabbak, és vannak olyanok, ahol mindenféle paramétert lehet állítani, ráadásul ezek mind összefüggnek egymással valamilyen módon. Programozni egy külön szakma, azt évekig, évtizedekig lehet tanulni, és naprakésznek is kell maradni. Mindig újabb hardverarchitektúrák jelennek meg, azokhoz persze újabb szoftverek. Ez egy folyamatosan fejlődő világ.
Ha csak a felhasználói ismeretek megszerzése a cél, mennyi időt vesz igénybe?
Különböző szintű alkalmazások vannak, az a kérdés, hogy mi a cél. Aki alkalmazásokat használ, annak nem kell tudnia, hogyan zajlik a kommunikáció a processzorok között. De mindig lehet tanulni, és mindig kell is tanulni. Lehet, hogy egy meglévő algoritmust nem is lehet közvetlenül használni egy újabb feladatkörre, át kell szervezni a program futását. Nem mindegy, hogyan osztjuk szét a feladatokat, fontos, hogy minél kevesebb adatmozgás legyen. Viszont nagyon sokfajta optimalizált adatkommunikációs megoldás létezik. Van ahol többszörös redundanciával, hogy még gyorsabb legyen, de van, ahol erre kisebb hangsúlyt fektetnek, viszont az adattárolás és –elérés másképp van optimalizálva. Ráadásul a különböző hardverekhez különböző szoftvermegoldások tartoznak, ezért egy adott rendszerbe való belépéshez arra vonatkozó előképzettség kell. Meg persze nem a lehető legbonyolultabb feladattal kell kezdeni, aminek óriási az erőforrásigénye, hanem egy egyszerűbbel. Lépésről lépésre, egy kisebb feladattal kipróbálni, utána finomhangolni a beállításokat, majd léptéket váltani.
Kinek ajánlaná a szuperszámítógép használatát?
Azoknak, akik nagy számítási kapacitást igénylő feladatokon dolgoznak, illetve, akiknek a lehető legrövidebb idő alatt kell minél nagyobb számítási kapacitás. Egy mindennapi, gyakorlati példával élve, nagyon komoly költségmegtakarítást lehet elérni az energiaáramlás optimalizálásával, és ezt is lehet szimulálni.
Mi kell ahhoz, hogy valaki hatékony szuperszámítógép-felhasználó legyen?
Előképzettség. A szuperszámítógép egy lehetőség, de tartozik hozzá egy felhasználói felelősség is. Egy HPC nagyon drága, ezért minél jobban ki kell használni. Nagyon fontos megismerni a dokumentációkat, a rendszerről kiadott információkat, hogy a felhasználó úgy kalibrálja a feladatát, hogy az a lehető leghatékonyabban használja az erőforrásokat. Ez nem jelenti azt, hogy ez sikerül is, ezért nagyon fontos a már említett monitoringozás. A visszajelzések alapján a következő körben javít, akár fejleszt, akár átparaméterezi a feladatot. Ez egy tanulási folyamat, amihez folyamatosan képeznie kell magát az embernek.
Miért jelentkezett Kompetencia Központ szakértői gárdájába?
A kutatás mellett régebben, közel tíz évig, dolgoztam az iparban is, informatikai biztonsági szaktanácsadóként. Aztán a négy gyerekem mellett csak a kutatásra koncentráltam, de most, hogy ők már nagyobbak, van szabad kapacitásom. Szuperszámítógépeken dolgozom, algoritmusokat fejlesztek, kifejezetten érdekel is. Remélem, hogy tudom kamatoztatni az ismereteimet, tudok segíteni a Komondor elindításában, a külföldi tapasztalatok adaptálásában, hiszen nem kell mindent kitalálni, a jó megoldásokat át lehet venni, hatékonyabban, gyorsabban haladni.
Mi lesz a legérdekesebb feladat az Ön számára?
Az, hogy milyen típusú ütemezőprofilokat lehet kialakítani a KIFÜ új rendszerében, a Komondorban, illetve hogy a HPC-kultúrát és lehetőségeket, milyen módon lehetne az ipari felhasználók számára is minél vonzóbbá tenni. Ez szerintem nagyon fontos, és megköveteli az interaktivitást a felhasználó és a szolgáltató között. Mindemellett aktív felhasználója is szeretnék lenni a rendszernek és kutatási programjaink egy részéhez szükséges számításokat a Komondoron megvalósítani.
Ön mit vár a Kompetencia Központtól?
A tudomány ma már rendkívül specializált, de ha az egymást kiegészítő szaktudásokat sikerül összekapcsolni egy-egy probléma megoldása kapcsán, óriási lehetőségeket teremthet. Már most voltak olyan beszélgetéseim a HPC-szakértő kollégákkal, amikből kölcsönösen nagyon sokat tanultunk, noha különböző szakterületeken vagyunk, különböző részfeladatokkal. A Kompetencia Központnak tehát a legnagyobb erőssége egy olyan szemlélet kialakítása lehet, ami nagyon sok oldalról megvilágítja a feladatot és a lehetőségeket. Ez olyan szinergiát hozhat, amiből egy sokkal hatékonyabb megoldási metódus is kialakulhat.
Mennyire érzékeli a szuperszámítógépek fejlődését?
A mi intézetünkben a Wigner Fizikai Kutatóközpontban az idősebb professzoroknak még ott voltak a szekrényben a lyukkártyás programjai, sőt, lyukszalagok is voltak. A ’80-as években arról cikkeztek, hogy a 4, 6, 8, és aztán nagyon szofisztikált esetben a 12-es méretű kvantumos rendszer hogyan viselkedik, és ebből mondták meg, hogy mi lesz a végtelen rendszerrel. Abban az algoritmusban, amivel ’93-94-től elkezdtem foglalkozni, ez hirtelen felugrott 100-ra. Tehát körülbelül 15 év alatt eljutott 4-től 12-ig, majd 3 éven belül 12-ről 100-ra, majd 1000-re, és most már 10000-nél is járunk bizonyos esetekben. A kutatóintézetben, amikor kezdtem, a hatalmas szupergépben 64 megabájtos memória volt. Később az 500 megabájtos gép egy óriási ugrás volt, a mostani gépekben meg terabájtok vannak. Meg a magszám! Először olyan gépeken dolgoztunk, amiben egy CPU volt, és annak a frekvenciája is sokkal alacsonyabb volt, mint a mostaniaké. Most már több tízezer mag van egy szuperszámítógépben, óriási a fejlődés.
Hogyan látja a szuperszámítástechnika jövőjét?
A mostani, klasszikus számítógépekkel az a probléma, hogy a processzorok sebességének növeléséhez egyre kisebb méretskálák szükségesek, és akkor megjelennek a kvantumfizikából adódó fizikai effektusok, amiket nem lehet kiküszöbölni. Van egy fizikai limit, ami alá nem tudunk lemenni, erre a párhuzamosítás a megoldás. Elképzelhetőnek tartom a technológiaváltást, új anyagok alkalmazását, a grafénalapú processzorok például nagyon ígéretesek. Mindamellett az egyik legfontosabb kutatási terület a spintronika, ahol az elektronok spinjeinek manipulálásával, kontrollálásával lehetne műveleteket végezni. De ezek alap-, vagy alkalmazott kutatási fázisban lévő fejlesztések. Sokan azt gondolják, hogy a kvantumszámítógép ki fogja ütni a szuperszámítógépet, de nincsen univerzális kvantumszámítógép. Meghatározott feladatokra lehet fejleszteni kvantumszámítógépet, tehát csak bizonyos esetekben lesz nagyon jó, de nem lesz univerzális, mint a HPC. Viszont a kvantumszámítógépbe a párhuzamosítás eleve be van kódolva. Nem dönthető még el, hogy a praktikus megoldást melyik biztosítja majd, de nem hiszem, hogy kvantumszámítógépek lesznek hirtelen mindenhol, mert nagyon sok feladat van még velük.