Az új pécsi szuperszámítógép nemcsak a kutatóké

Minden városban más architektúra

A múlt héten adták át a Nemzeti Információs Infrastruktúra Fejlesztési Intézet (NIIF Intézet) által menedzselt HBONE+ projekt keretében a magyar kutatói hálózat továbbfejlesztése érdekében létrehozott szuperszámítógépes infrastruktúra első elemét, a Debreceni Egyetemen elhelyezett nagy gépet. Ez a rendszer összesen négy számítógépet tartalmaz, s a folyamatos üzembe helyezés során április 15-én a Pécsi Egyetemen következett el a hivatalos átadás ideje. Az eseményen az IT café is részt vett, s a pécsi projekt egyik vezetőjével, Koniorczyk Mátyással, az egyetem tudományos munkatársával beszélgettünk, és arra kértük, mutassa be az intézmény új büszkeségét. (A szuperszámítógépről készül képgalériánk a cikk második oldalán található.)


Koniorczyk Mátyás

Az országban akadnak már olyan rendszerek, melyeket tulajdonságaik alapján szuperszámítógépeknek nevezhetünk, ilyen például az Országos Meteorológiai Szolgálatnál tavaly nyáron üzembe helyezett IBM iDataPlex, mely 14 teraflopsos teljesítményével egész a múlt hétig, a Debreceni Egyetemen átadott új rendszer elindulásáig a leggyorsabbnak számított. Mik a hetekben folyamatosan elinduló új kutatói rendszer jellemzői? Hogyan épül fel, kik a résztvevők?

A jelenleg záródó projekt gazdája, a NIIF Intézet már 2001 óta működtet egy a Sun által gyártott rendszert, mely azonban a folyamatos bővítés ellenére is messze elmarad képességeiben a most elinduló rendszerektől, akár egyenként, akár együttesen szemléljük őket. (Azt azért megjegyzem, hogy ez a ma már kissé „korosnak” számító pesti gép bőven megszolgálta az árát, gyakorlatilag száz százalékos kihasználtsággal működött az elmúlt évtizedben, és számtalan kutatási projekt megvalósítását tette lehetővé.)

A pécsi szuperszámítógép, az SGI UltraViolet 1000 főbb jellemzői

(A részletes leírás az egyetem honlapján olvasható.)

  • 192 darab Intel X7542 Xeon processzor (6 core/2,66Ghz/18M/5,86GT/s), összesen 1152 db processzormag
  • 1536 x 4GB DDR3 rendszermemória, vagyis 6144 GB teljes megosztott memória
  • Háttértár: három, egyenként 165 terabájtos egység, összesen 495 terabájt. Az egységek belül redundáns, Raid 6 szervezésűek, a tárolóegységek 8 Gbit/s sávszélességű kapcsolattal kapcsolódnak a számító egységhez
  • A rendszer 3 darab 24 inches vízhűtéses szekrényből és 2 darab 19 inches léghűtéses rackszekrényből áll. Előbbiekben a számítási egységek találhatók, tömegük egyenként 1134 kg. A másik két szekrény a tároló és vizualizációs egységeket tartalmazza, tömegük 780 kg, ill. 475 kg
  • A rendszer maximális villamos fogyasztása 59,9 kW, a valós várt fogyasztás 44-49kW körüli érték
  • Altix XE 500 vizualizációs szerver
  • A szoftverkörnyezetet elemei: Linux SLES 11 OS, NVidia grafikus driver, nyílt forráskódú VirtualGL csomag TurboVNC/TigerVNC szerver- és kliensösszetevőkkel, nyílt forráskódú Paraview SW, nyílt forrású Blender

A NIIFI kezdeményezésére elindított fejlesztés koncepciója eredetileg is az volt, hogy ne a fővárosba kerüljenek számítógépek, hanem földrajzilag elosztott módon az úgynevezett pólusvárosokba, a debreceni, a pécsi és a szegedi kutatói műhelyekhez. A három nagy rendszer, valamint a szegediből Budapestre „kihelyezett” kisebb rész egy infrastruktúrát alkot, együtt menedzseljük őket, de az üzemeltetést az egyetemek vállalták fel, ezért cserébe prioritást kapnak a helyi feladatok. Tehát a miénk Pécsett lesz, de nem a mi tulajdonunk. A mi kutatásaink előnyt élveznek, de a fennmaradó időben bárki használhatja, igénybe veheti a kapacitást. A három rendszer teljes költsége egymilliárd forint volt, ezt harmadoltuk el a városok között.

A pályázatot az intézmények közösen menedzselték, és egy igen alapos és hosszadalmas folyamat végén választottuk ki a szállítót. Egy úgynevezett versenypárbeszédet folytattunk: előzetesen kiválasztódtak azok a cégek, akik képesek megfelelő színvonalon a nekünk kellő rendszert létrehozni, majd a vállalatok az általunk leírt igények alapján megoldási javaslattal álltak elő. Ezeket természetesen bizalmasan kezeltük, majd jött egy újabb tárgyalási forduló, elindult egy árverseny, és csak ezek után választottunk a legalkalmasabb három közül. Az egyik fő szempontunk az volt, hogy kellően sokszínű architektúra jöjjön létre.

Mi az ön feladata ebben a projektben?

Hirdetés

Jómagam fogom össze a leendő pécsi felhasználókat, ez a legfontosabb dolgom. Amikor kiderült, hogy a NIIFI mindenképp bővíteni kívánja a kutatói infrastruktúrát, az számunkra különösen örömteli volt, hiszen a pécsi egyetem egyszer már sajnálatos módon „lecsúszott” egy ilyen lehetőségről. Az előzetes egyeztetések után választottak ki szakmai kapcsolattartónak, többek között azért, mivel nekem már van némi szakmai tapasztalatom ilyen nagy gépen is.

Így aztán tagja, vezetője lettem annak a helyi akadémiai, interdiszciplináris munkabizottságnak, mely igyekezett az igényeket felmérni. A munkabizottságban minden olyan szakma képviselői jelen vannak, akik számára hasznos egy ilyen nagy kapacitású gép: meteorológus, több kvantumkémikus, néhányan az orvostudományi karról, fizikusok, mint jómagam, sok matematikus, mérnökök. A művészeti és a bölcsészkarról egyelőre még nincsenek érdeklődők, de ez csak idő kérdése, hiszen Pécsen egy kialakulóban lévő szuperszámítógépes kultúráról van szó, nem úgy, mint Szegeden, ahol ennek már vannak hagyományai.

A három gép alkotta nagy rendszer teljesen egységes, ugyanolyan gépekből áll?

Fontos megjegyezni, hogy a három gép nem egyforma. Részletes szakmai vitát folytattunk a projekt előkészítése idején, és a koncepció kialakítása során végül az az álláspont győzött, hogy a három városba három különböző architektúra kerüljön. Ennek az az oka, hogy mindenhol másféle kutatási igények merültek fel, ehhez kerestek az adott városban optimális megoldást, és a helyi csapat a saját elvárásaikat leghatékonyabban kiszolgáló rendszert választotta. Mi Pécsen úgy döntöttünk, hogy egy NUMA-architektúra kerüljön ide, Szegeden mindenképp clustert akartak, Debrecenbe pedig egy sajátos, köztes megoldást, egy MPP-t telepítettek. Ahogy említettem, Budapesten is lesz egy kisebb része ennek fejlesztésnek, a szegedi cluster egy darabja kerül oda a Műegyetemre.

Pécsre NUMA kellett

Miért épp NUMA?

Egy szuperszámítógépes rendszer tervezésekor manapság a kérdés mindig az, hogy cluster-jellegűt vásároljon-e az ember, vagy pedig egy hagyományos szuperszámítógépet. Jelenleg a clusterek piaci részesedése nagyságrendekkel nagyobb, mint a hagyományosaké. Ennek oka egyszerűen az, hogy olcsóbbak: a cluster jószerével sztenderd komponensekből építkezik, nem tartalmaz különös, sajátságos eszközöket, vagyis nagy erőforrást lehet létrehozni fajlagosan viszonylag olcsón – de külön kiemelném, hogy csak viszonylag!

A cluster ugye annyit jelent, hogy ez a rendszer sok számítógépből áll – ma már ezek önmagukban is erősek (fat-node clusters) –, s a gépek valamilyen topológiában egy igen gyors hálózati kapcsolattal vannak összekötve – ez manapság jellemzően InfiniBand. Itt minden számítógépnek van saját memóriája, saját – ma már több – processzora. A felépítésből adódik egy speciális fejlesztési követelmény: a rendszerre írott szoftverek, vagyis a végrehajtandó feladatok elvégzésére alkalmas programok megalkotása esetében a feladatot úgy kell szétdarabolni, hogy lehetőleg minden egyes gépnek (nodus, csomópont) legyen elegendő feladata, és ezek a nodusok lehetőleg minél kevesebbet kommunikáljanak. A cluster kiváló akkor, ha van az embernek egy konkrét problémája, amire vagy van kész szoftver, vagy neki kell ilyet fejlesztenie, s ahogy az előbb mondtam, a fejlesztést meghatározza ez a speciális architektúra. Vagyis clusterre fejleszteni mindig speciálisabb munka, mint egy hagyományos szuperszámítógépre.

Pécsi szuperszámítógép
A képgaléria megtekintéséhez klikk! a képre

Ez utóbbiak esetében mi a helyzet, miért más a fejlesztés módszertana?

Mennyiben más egy hagyományos gép (SMP)? Ezekben egy memória van, és az összes processzor egy egységként látja a memóriát – hogy mást ne mondjak, gyakorlatilag a többmagos processzorok is SMP-gépek. Ennél az architektúránál a legnagyobb gond az úgynevezett cache-koherencia. A NUMA ma már gyakorlatilag cache-koherens megoldás (ccNuma), de a memóriakésleltetésben valamennyi helyfüggés megengedett. A memóriakésleltetés (memórialátencia) elég lapos, tehát majdnem minden processzor ugyanúgy látja a memóriát, de logikailag egy címtér van.

Nos, ilyen a pécsi rendszer is. Ez ugye pengékből (blades) áll, hiszen több mint ezer processzort és memóriát nem lehet egy alaplapba beletűzködni, de a csomópontok között van egy úgynevezett NUMAlink összeköttetés, amit tíz éve már kifejezetten arra fejlesztettek, hogy cache-koherens NUMA jöjjön létre. Ezt egy ezért felelős, az operatív tártól elkülönülő memória biztosítja. Annyi a hátránya, hogy gyártófüggő, ugyanis egyetlen gyártó, az SGI készít csak ilyet jelenleg.

Ennek a megoldásnak ma csak egy alternatívája van, a v(ersatile)SMP, ahol van egy cluster, InfiniBanddel sztenderd hardverből felépítve, és ide kerül ez a BIOS után bejövő, assemblyben írt szoftver, és „csinál” SMP-gépet a berendezésből. De épp itt a lényeg: ez szoftver, nem hardver, itt például a cache-koherencia fenntartásához szükséges memória az operatív memóriából vész el. Bizonyos esetekben nagyon jó, de nem mindenhol. (Voltak ilyen ajánlatok, de a miáltalunk megadott fizikai paramétereket sokkal jobban megközelítette az SGI).

És a pécsi kutatói igények egy NUMA-rendszert kívántak meg?

Azért döntöttünk a NUMA mellett, mert ez egy univerzálisabb architektúra, könnyebb rá fejleszteni. Ezen olyan alkalmazásokat is lehet futtatni, amikhez esetleg csak egy processzor kell, de irdatlan nagy memória – a pécsi gépben 6,3 terabájt memória lesz, és ezt akár egy processzornak is ki tudja címezni; ezt clusterben nem lehet megoldani. Úgy láttuk, hogy egy kialakuló szuperszámítógépes kultúrában, ahol nagyon sokféle felhasználás lesz, ott az a jó, ha az eszköz minél univerzálisabb. Emellett több olyan fontos kutatási terület van, ahol egy ilyen architektúra az igényük, például a genetika: amikor mintákat keresnek a genomban, akkor nagyon nagy előny az, ha a teljes genom akár többször is belefér az operatív tárba. Ez óriási lehetőség a Pécsen dolgozó genetikusok számára.

A pécsi szuperszámítógépes kultúra alakulóban

Egy ilyen rendszer használata, lehetőségeinek felmérése önmagában is ismereteket, tapasztalatot kíván meg, s ahogy többször is említette, Pécsen még csak most fog kialakulni egy szuperszámítógépes kultúra. Vagyis oktatásra, ismeretterjesztésre, kampányokra is szükség lesz. Erre is felkészültek?

Természetesen. Maga a munkabizottság szervez szemináriumokat, oktatásokat, hiszen ez a lehetőség még nagyon új itt. Egy szuperszámítógép lehetőséget ad olyan problémák felvetésére is, melyek nélküle valószínűleg fel sem merülnének. Szükségünk van több olyan szakemberre is, akik nem rendszergazdák – persze lesznek ilyenek is. Olyan képzett munkatársak kellenek – a legjobb, ha maguk is kutatók –, akik ismerik ezt a különleges technológiát, és a szakterületükön tanácsokat tudnak adni a kollégáiknak, el tudják magyarázni, mi is ez, illetve az adott szakmában mire lehet jó. Olyan kollégákat keresünk, akik, látva egy adott problémát, meg tudják mondani, vannak-e erre kész alkalmazások, s ha nincsenek, meg tudják becsülni, mekkora erőforrásra van szükség egy ilyen kifejlesztéséhez.

Kisszótár

Cache-koherencia, vagy gyorsítótár-koherencia: egy adat különböző gyorsítótárakban lévő példányai azonosságának, „szinkronizálásának” biztosítása.

Cluster: általános elnevezés, magyarul fürtözött rendszernek is szokták nevezni. Egyik közkeletű minimumdefiníciója szerint több számítógépből álló, elosztott informatikai rendszer.

HPC (high-performance computing): nagy teljesítményű számítástechnika

MPP (massively parallel processing): a szimmetrikus multiprocesszorokkal ellentétben az MPP-architektúrákban a memória fizikailag szét van osztva a processzorok között, és így nagy mértékben bővíthető.

NUMA (Non-Uniform Memory Access): egy olyan memóriaarchitektúra, amely a többprocesszoros rendszerekben használatos. A processzoroknak saját, dedikált, a közös rendszermemóriától elkülönített memóriaterületük van, amelyet a saját számításaik elvégzésére használhatnak.

SMP (symmetric multiprocessing): többprocesszoros rendszer. Az SMP esetében több processzor osztozik ugyanazon a memórián (tehát közös a memória), illetve minden processzor egyforma. A ma elterjedt többmagos CPU-k SMP-rendszerek önmagukban is.

Mert bizony saját fejlesztésekre bizonyosan szükség lesz majd. Még akkor is, ha léteznek ugyan HPC-szoftverek, köztük egész kiválóak is; vannak fejlesztőeszközök, ezek egy részét maga a gyártó biztosítja; vannak vizualizációs szoftverek. Nálunk is van egy külön vizualizációs szerver, vagyis a munkaállomásra már előfeldolgozott képek érkezhetnek – erre azért van szükség, mert a szuperszámítógépeken jellemzően óriási adattömeget dolgoznak fel, ezt valahogy meg is kell jeleníteni, és az animáció elkészítése bizony nagy gépigényű.

Mennyire vették figyelembe a tervezéskor a továbbfejlesztési lehetőségeket?

A választáskor ez a szempont markáns szerepet játszott. A szuperszámítógépek esetében a továbbfejlesztés lehetőségének felmérése elég speciális döntéseket igényel, de a lényeg: egyrészt nem akartunk kifutó technológiát, figyelembe vettük, hogy a processzor mennyire lesz upgrade-elhető, s arra is ügyeltünk, hogy minden elem bővíthető legyen, ha lehetséges. Sajnos a NUMA ebből a szempontból rugalmatlanabb, mint a cluster, amit sokkal könnyebb bővíteni. Ezeken kívül az is a kívánságlista élén állt, hogy aktív fejlesztés alatt lévő megoldásokat tartalmazzon, nehogy két év múlva a megszűnő cég miatt bajba kerüljünk.

Hol helyezték el számítógépet?

Az egyéb körülmények miatt sajnos késve megépülő új tudományos központba, a Science Buildingbe szerettük volna telepíteni, de hát ez az ismert okok miatt nem volt lehetséges (az új tudományos központ építésének elindítása már éveket csúszott az eredménytelen közbeszerzési pályázatok miatt - a szerk.). Ezért az egyetem természettudományi karán találtunk neki megfelelő helyet, melynek kiválasztása nem volt egyszerű, hiszen négy rackről van szó, rackenként egy tonna súlyról, ezért egy olyan helyiség kellett, ami alatt nincs pince. A TTK-n lévő terem talán ideiglenes lesz, de egyelőre itt működik – feltehetően még évekig.

Mennyit fogyaszt egy ilyen rendszer, sokba fog kerülni a fenntartás?

Nem olcsó. Pontos adatot nem tudok mondani, de mai árakon számítva évente körülbelül 20-50 millió forint lesz a rezsije, ami körülbelül annyi, mint a hallgatói termeké összesen.

Sokat segíthetne anyagilag, ha bérbe tudnák adni a fölösleges kapacitást.

Az új infrastruktúra a magyar kutatási szféra támogatása céljából jött létre az adófizetők pénzéből, tehát nem lehet termelési célra bérbe adni. Ugyanakkor vannak azért lehetőségek: olyan ipari, gazdasági kutatási projekteket igen szívesen látunk, melyek tudományos igényűek, illetve tudományos hozadékuk is van. Sőt, kifejezetten azt szeretnénk, ha minél többen jelentkeznének ilyenekkel. Hogy világosan fogalmazzak: bérszámfejtésre nyilvánvalóan nem fogjuk rendelkezésre bocsátani a rendszert, de ha egy cég egy új termék megtervezéséhez kívánja használni, akkor bizonyos feltételek teljesítése után természetesen igen. Roppant nyitottak vagyunk ez utóbbi megoldásra, várjuk a jelentkezőket, ez igen fontos a finanszírozhatóság szempontjából.

Jómagam mindenesetre tele vagyok optimizmussal. 2011-ben már nem kiválóság, exkluzív adottság a szuperszámítógép egy kutatói műhely számára, hanem elvárás, hiszen ha nincs, az adott közösség hátrányba kerül. Ez a beruházás talán fellendíti a pécsi informatika viszonylagos fejletlenségét, s egy ilyen irányú pozitív változás a régiónak is nagyon jót tenne. A kényszer, remélem, komoly eredmények elérését segíti majd.

  • Kapcsolódó cégek:
  • NIIF

Azóta történt

Előzmények