Foto: Canva Stock
Neki mudar čovek je odavno ukazao da, kada se radi o putovanjima, ljudi često imaju nezdravu opsesiju destinacijom. Putovanje je mnogo više od toga – i dolazak na odredište je često svojevrsni antiklimaks. Šta onda tek reći o putovanjima koja se, bukvalno i dokazivo, nikad ne završavaju? Gde je odredište doslovno beskonačno daleko, ali svejedno znamo kuda i zašto idemo?
U ovoj kolumni na Talasu smo do sada prikazivali knjige, filmove i TV serije. Ovaj tekst može se shvatiti i kao prikaz jednog sajta – a to je https://www.top500.org (u daljem tekstu Top500). Top500 je sajt veoma različit od svih ostalih. Zamislite na trenutak da je internet postojao u doba evropske Renesanse, naročito u doba evropskog Doba otkrića (grubo 1450-1600. godine). U ovom protivčinjeničkom misaonom eksperimentu možemo zamisliti sajt koji bi objavljivao vesti i rang-liste najdužih putovanja i najkvalitetnijih brodova. Bartolomeo Dias otkrio Rt dobre nade! Vasko da Gama oplovio Afriku! Brodovi Kristofora Kolumba pristali na Hispaniolu!… Pedro Alvares Kabral … Amerigo Vespuči… Džon Kabot… Martin Frošbišer… itd. Svi ovi veliki ljudi su koristili najsavremeniju tada dostupnu tehnologiju za plovidbu morem da bi se otisnuli u suštinski nepoznato, gde poznata pravila ne moraju nužno da važe.
Top500 je sličan sajt u realnoj istoriji, samo za putovanja koja se ne odvijaju u 4-dimenzionalnom prostor-vremenu, nego u različitim N-dimenzionalnim prostorima apstraktnih parametara. Neshvatljivo ogromna količina operacija koje treba učiniti da bi se u tom okeanu brojeva moglo stići do željenog cilja – i usput učiniti mnoštvo uzgrednih otkrića – zahteva sve zahtevnije i zahtevnije brodove. I kao u doba princa Henrika Moreplovca, istinskog tvorca i inspiratora Doba otkrića, hrabri moreplovci imaju unapred vrlo malo predstave o tome šta ih na putu očekuje.
Osnovno sredstvo putovanja – analog karavela i karaka iz Henrikovog doba – je superračunar: mašina koja obavlja ono što se pomalo eufemistički zove računanje sa visokim performansama (engl. high-performance computing) ili masivno paralelno računanje. Nivo performansi se obično poredi sa standardnim PC računarima opšte namene, kao što su desktopovi i laptopovi. Za razliku od ovih uređaja koje svakodnevno koristimo, kao i za razliku od mobilnih računara u telefonima i tabletima, superračunari nemaju tek 2, 4 ili 8 procesorskih jezgara, već hiljade, a u novije vreme i milione procesorskih jezgara. Načini na koji su ovi procesori postavljeni na ogromnom broju matičnih ploča, kako su međusobno povezani, kao i sa radnom memorijom, diskovima i drugim periferijama je veoma kompleksan na svim nivoima, od nivoa apstraktne topologije mreže do pitanja hlađenja i energetske efikasnosti. Već sama ta činjenica nam ukazuje da su superračunari pre svega velikih dimenzija: oni zauzimaju velike sale u velikim, često samo za te potrebe podignutim zgradama. Po tome, oni podsećaju na drevne računare kao što su Colossus, ENIAC ili IBM360 – ali tu se otprilike sličnost i završava. Nasuprot tim drevnim prethodnicima, savremeni superračunari su ultrabrze i ultramoćne mašine koje opslužuju desetine ili stotine korisnika istovremeno, obavljajući broj operacija za koje vaš laptop ili ultrabook ne bi obavio ni kada bi radio neprekidno od sada do trenutka kada se Sunce pretvori u crvenog džina i proguta Zemlju za oko 7 milijardi godina. Primene superračunara su doslovce neiscrpne i ne mogu se ni približno nabrojati u ovom formatu; neki od karakterističnih primera su simulacije hidrodinamike koje se koriste kako za konstrukciju novih aviona ili podmornica, tako i za modeliranje eksplozija dalekih supernovih, ili izgradnja računskih modela klimatskih promena ili kontrole saobraćaja u modernim urbanim konglomeracijama.
Kako, međutim, izmeriti performanse superračunara? Ovo nije nimalo trivijalan problem, zato što su i hardver i softver koji koriste ove mašine veoma, veoma raznoliki i ne daju se lako postrojiti duž jedne linearne skale, niti ijedan klasični benčmark razvijen za PC standarde tu mnogo pomaže. Osnovan 1993. godine, u vreme koje se može opisati kao antika računarstva, sajt Top500 koristi tzv. LINPACK benčmark razvijen posebno za analizu masivnih paralelnih sistema sa velikim brojem procesorskih jezgara da kompajlira listu 500 najmoćnijih superračunara na planeti. Osnivači i glavni autori sajta su četvorica nemačkih i američkih računarskih naučnika, Erih Stromajer, Horst Sajmon, Džek Dongara i Martin Majer, mada je sajt otvoren za brojne doprinose drugih istraživača i inženjera. Iako se vesti iz ove oblasti objavljuju na sajtu stalno, sama lista od 500 najjačih mašina se ažurira dva puta godišnje, u junu i decembru. Na sajtu se može pronaći još čitav niz sadržaja, grafički prikazi različitih parametara i metrika koji opisuju superračunare, interesantni istorijski dijagrami koji opisuju poboljšanje naše tehnologije, diskusije različitih benčmarkova i slično, na različitim tehničkim nivoima, kako za fanove, tako i za stručnjake.
Tempo rasta superračunarskih performansi od početka 90-tih do danas. (Ljubaznošću https://www.top500.org.)
Osnovna jedinica računarskih performansi je flops, što je engleska skraćenica od floating-point operations per second, odnosno (broj) operacija sa pokretnim zarezom u sekundi (alternativa koja se ređe koristi je MIPS, odnosno „milion instrukcija u sekundi“). Pokretni zarez se ovde odnosi na aritmetiku realnih brojeva, koji se standardno predstavljaju kao zapis značajnih cifara (tzv. signifikant) plus eksponent u nekoj utvrđenoj osnovi, najčešće 10 – decimalni zapis. Klasičan digitron, ako ga se još iko seća, imao je performanse reda veličine 10 flopsa. Prosečno inteligentan čovek, dakle ne matematički savant, obično svesno računa na nivou 0,01-0,1 flopsa; ovo nikako ne mešati sa pitanjem kolika je efektivna računarska moć ljudskog mozga koja je sasvim sigurno mnogo redova veličine veća, pošto mozak obavlja daleko, daleko više operacija od onih kojih smo svesni. Na ovo ću se još vratiti.
Za superračunare se koriste veliki decimalni umnošci: gigaflopsi (109 = milijardu flopsa), teraflopsi (1012 = bilion flopsa), i trenutno aktuelni petaflopsi (1015 = bilijardu flopsa). Ovde zanemarujem komplikacije vezane za istorijsko benčmarkovanje 16-bitnih ili 32-bitnih zapisa brojeva i slično. Korporacija Intel je 1997. godine prva probila „teraflops barijeru“ sa svojim ASCI Red kompjuterom. Nekih 11 godina kasnije, IBM se pojavio na naslovnim stranama sa svojom „Pticom trkačicom“, prvim računarom koji je ostvario više od 1 petaflopsa u čuvenoj Los Alamos nacionalnoj laboratoriji u Nju Meksiku. Ponovimo još jednom, mada smo tu već odavno u domenu teško zamislivog, radi se o milion milijardi aritmetičkih operacija sa realnim brojevima u sekundi. Ako zamislite da ste naslagali digitrone koji bi vam ukupno omogućili isti nivo performansi jedan na drugi, takav stub digitrona prostirao bi se od Zemlje do Saturna. Ali čak ni ove fantastične performanse nisu omogućile „Ptici trkačici“ da ostane na vrhu Top500 liste duže od oko godinu i po dana, pre nego što ga je konkurencija potisnula sa vrha.
Najmoćniji računar današnjice već neko vreme je Fugaku, superkompjuter japanskog Centra za naučno računanje (čuveni RIKEN) u Vaku, na periferiji Tokija, sa nešto malo više od 7,6 miliona (!) procesorskih jezgara, i sa maksimalnom brzinom (obično se označava sa Rmax) od 442 petaflopsa. Zastanite malo i razmotrite ovu činjenicu: pojedinačna mašina ima više procesora nego što Srbija ima stanovnika. I to nisu bilo kakvi jeftini procesori, već A64FX 64-bitni procesori sa ARM arhitekturom koje za specijalne potrebe proizvodi korporacija Fujitsu. O kakvim se superiornim proizvodima tehnologije zasnovane na fizici čvrstog stanja radi svedoči i podatak da su najsitniji delovi ovog procesora veliki svega 7 nanometara (milijarditih delova metra), što je samo 10 puta veće od prosečnog razmaka među atomima natrijuma i hlora u kristalu kuhinjske soli. Sa prosečno 30 megavata koje povlači iz električne mreže, Fugaku troši sličnu količinu energije kao gradovi poput Valjeva ili Pirota. Izgradnja ovog džina među džinovima superračunarstva koštala je oko jedne milijarde dolara i trajala skoro dve godine (opet uporediti sa tipično satima potrebnim da se sastavi vaš tipični desktop ili laptop).
Nakon trenutnog šampiona, sledi dugačka lista sa mnogo oštre konkurencije, ništa slabije od one na teniskim ATP i WTA rang-listama. U prvih 10 nalazi se 5 superračunara iz SAD, 2 iz Kine, po jedan iz Japana, Nemačke i Italije. Dominacija Sjedinjenih Država na ovom polju je još značajnija kad se zna da su trenutno u toj zemlji u izgradnji čak 3 superračunara sa potencijalom ne samo da uđu u prvih 10, već i da se nađu na čelu cele liste (najbliže tome je Aurora, superračunar koji korporacija Intel upravo konstruiše za potrebe Argon nacionalne laboratorije kod Čikaga). Valja napomenuti da ogromne zasluge za ovo ima bivši predsednik Barak Obama, koji je 2015. godine jednim izvršnim naređenjem stvorio Nacionalnu superračunarsku stratešku inicijativu čija eksplicitna misija jeste ostvarenje računanja na takozvanoj eksaskali, o čemu više reči malo kasnije. SAD imaju ogromnih 30,7% totalnih superračunarskih performansi, a slede Japan (22,6%), Kina (19,4%), Nemačka (6,1%) i Francuska (3,2%).
Skoro svi vodeći superračunari, preciznije 9 od prvih 10, rade pod operativnim sistemom linux i njegovim varijantama, najčešće Red Hat ili CentOS distribucijama. Izuzetak je vodeći kineski superračunar Sunway TaihuLight u Nacionalnom centru za superračunarstvo u Vusiju kod Šangaja, koji koristi operativni sistem Sunway RaiseOS 2.0.5 kreiran posebno za njegove primene (mada takođe sa mnogim linux elementima). Moć masivne paralelizacije i njena privlačnost za najrazličitije korisnike možda se najbolje manifestuje na samom kraju liste – čak i poslednji, dakle 500. superračunar na listi u ovom trenutku ima preko 34 hiljade procesorskih jezgara i Rmax od oko 1,5 petaflopsa.
Srbija nažalost nema predstavnika na Top500 listi, iako valja naglasiti da je na jesen 2014. godine, u vreme puštanja u rad najmoćnijeg srpskog superračunara, PARADOX 4 na Institutu za fiziku u Beogradu (u Zemunu), procena pokazala da bi po performansama on ušao na Top500 listu u segmentu od 401.-500. mesta. Obzirom da se granice superračunarstva pomeraju daleko brže od srpskih ulaganja u nauku, uključujući sve naučne discipline u kojima se ovakve mašine koriste, tadašnja situacija je brzo prohujala, nažalost. Slovenija, na primer, ima nekoliko moćnih superračunarskih mašina koje sve nose zajedničko ime VEGA HPC na Institutu informacijskih znanosti u Mariboru. Najmoćnija od njih sa 122880 procesorskih jezgara i Rmax od 3,822 petaflopsa zauzima relativno visoko 106. mesto na trenutnoj Top500 listi, a druga se nalazi na 134. mestu. Ovo, naravno, ne znači da se domaći naučnici ne koriste superračunarskom tehnologijom, naprotiv! Postignuća domaćih stručnjaka iz domena raznih numeričkih disciplina, naročito onih okupljenih oko Laboratorije za naučno računanje na Institutu za fiziku utoliko su impresivnija zato što su postignuta sa veoma, veoma skromnim sredstvima.
Na listi proizvođača hardvera, stanje je prilično očekivano: u prvih 10 su „dežurni krivci“, dakle Lenovo, Inspur, HP, Dell, Fujitsu i drugi, plus par firmi specijalizovanih za superkompjutere, od kojih je najpoznatiji Cray Inc., glavni igrač na ovoj sceni tokom skoro pola veka od svog osnivanja (1972). Sejmur Krej, osnivač firme i apsolutna legenda superračunarstva, poginuo je u saobraćajnoj nesreći još davne 1996. godine, ali njegovo delo je živo, ne samo kroz istoimenu korporaciju, već i još više kroz osnovne organizacione principe ovog sektora IT industrije. Kao što je poznato, HP je 2019. izvršio akviziciju Cray-a za oko 1,4 milijarde dolara, što se nekima tada činilo ekstravagantnim i traćenjem para obzirom da nema nikakve veze sa „apovima“ i „mobilnim uređajima“ (zapravo je najudaljenije moguće od njih – moderni superračunari skupa sa sistemima za hlađenje imaju više stotina tona, tako da bi samo polubožanstva ili superheroji poput Herakla ili Supermena mogli da ih tretiraju kao mobilne). Vrlo je moguće da najbolji dani za Cray Inc., sad pod zastavom HP-a, tek dolaze u 2023. godini, za kada je predviđen početak rada El Capitan superračunara koji će najvećim delom biti posvećen modeliranju nuklearne tehnologije, a za koji će Cray biti glavni proizvođač hardvera.
Svojevrsni „sveti gral“ superračunarstva u poslednjih par godina je postalo računanje na eksaskali (engl. exascale computing), odnosno ono koje odgovara eksaflopsima; ovaj relativno retko korišćeni decimalni umnožak odgovara 1018 nečega, u konkretnom slučaju već pomenutih flopsa, odnosno operacija sa pokretnim zarezom u sekundi. Simbolički značaj ove skale računskih performansi leži u tome što ona, grubo govoreći, odgovara ukupnoj računarskoj moći ljudskog mozga na nivou razmene impulsa među desetak milijardi neurona koji svakog od nas čine onim što jeste. Zastrašujuće veliki red veličine 1018 – odnosno trilion (u dugačkoj skali) – jeste red veličine broja svih zrnaca peska na čitavoj planeti Zemlji. Ovo je problem od epohalnog istorijskog značaja, pošto ga je kao razlog prvog ozbiljnog istraživanja velikih brojeva naveo najveći matematičar starog veka, Arhimed iz Sirakuze, stavivši ga u naslov svoje rasprave: Ψαμμίτης, odnosno Brojač peska (oko 230. pre n.e.). Arhimedova rasprava je pokazala da je u konceptualno jednostavnom brojnom sistemu moguće manipulisati ogromnim brojevima koji se do određenog nivoa mogu zamisliti pomoću intuitivnih slika („koliko zrnaca peska ima na Zemlji?“), ali na još većim skalama to nije moguće – ali nije ni neophodno. Naravno, da bi se razumela ogromnost ovog decimalnog prefiksa, možemo pomenuti da je 1 eksasekund = skoro 32 milijarde godina, tj. više od dvostrukog vremena od onog koje je proteklo od Velikog praska do danas. U prostornim terminima, eksametar je jedinica dužine nešto veća od 100 svetlosnih godina, što odgovara veličini tipičnog globularnog zvezdanog jata u našoj Galaksiji, koje sadrži od par stotina hiljada do par miliona (!) zvezda.
Do trenutka pisanja ovog teksta (kraj septembra 2021.) nijedan pojedinačni superračunar nije dosegao ovaj nivo procesiranja informacija, odnosno svi su na nivou stotina petaflopsa mada postoji izvesna nesaglasnost različitih kriterijuma koji se koriste za procenu performansi. Jasno je da je efektivna eksaskala postignuta, ali ne sa pojedinačnim mašinama, nego sa široko distribuiranim kolaborativnim mrežnim projektima, kakvi su Folding@home, SETI@home i sl. Međutim, intenzivno se radi na izgradnji individualnih mašina koje će u redovnom radu, dakle ne samo u individualnim „pikovima“ kada je upravljanje računarskim resursima najoptimalnije, nadmašiti 1 eksaflops; za sad se najveće nade polažu u pomenute američke superračunare u izgradnji.
Za kraj još dve stvari na koje treba obratiti pažnju, jedna praktična vezana za ljudski, a druga teorijska od interesa za „božanski um“. Krenimo sa praktičnom. Ukoliko neko shvata previše ozbiljno marketinške mantre o „eri mobilnosti“ i ubeđen je da budućnost leži isključivo u pravljenju aplikacija za mobilne telefone i tablete – taj neko je u zabludi. Džinovske mašine, superračunari su stvar budućnosti podjednako koliko i bilo koji mobilni uređaji. Fugaku ima moć procesiranja veću od svih mobilnih uređaja koji se danas koriste u Srbiji zajedno; i za razliku od potonjih, čiji procesori su preko 90% vremena nekorišćeni (a ostatak se uglavnom koristi u frivolne svrhe poput mobilnih igrica i društvenih mreža), kod superračunara je svaki sekund CPU vremena maksimalno iskorišćen i to uglavnom za ozbiljne stvari, od koristi po čitavo čovečanstvo: od razumevanja klimatskih promena i kretanja kontinentalnih ploča, do izgradnje modela širenja patogena ili razumevanja kretanja elementarnih čestica u akceleratorima.
Sve ovo se može sagledati i iz jedne drugačije perspektive. Mnogi veliki matematičari modernog doba, naročito oni koji su se bavili čarolijama teorije brojeva, uključujući Šrinivasa Ramanujana, Pola Erdosa i Ronalda Grejema, iskazivali su u više ili manje neformalnom kontekstu ideju da su mnoge stvare koje nam se čine zagonetnim ili neobjašnjivim (poput nula Rimanove zeta-funkcije koje su duboko povezane sa raspodelom prostih brojeva) posledica naše kratkovidosti i parohijalnosti: mi po prirodi stvari operišemo samo sa malim brojevima. Svi brojevi kojima su matematičari – a i svi drugi ljudi – u oko 5 hiljada godina razvoja našeg matematičkog saznanja od doba Sumera operisali su relativno mali brojevi; ovde govorimo o brojevima u kolokvijalnom, ali i tehnički najprisutnijem značenju reči – tzv. transfinitni brojevi koje je uveo Kantor ne spadaju u ovu kategoriju, ali oni predstavljaju tek majušni segment matematičkog interesovanja i matematičkih aktivnosti. Ako prihvatimo da su brojevi na osnovu kojih gradimo naše razumevanje u, recimo, teoriji brojeva relativno mali, moguće je da su mnogi naši matematički principi samo približno tačni – na suštinski isti način na koji geodetski zaključci iz naše opštine važe samo približno, zato što je opština toliko mali delić površine planete i u crtanju mapa opštine možemo zanemariti okrugli oblik Zemlje.
Imajmo u vidu da je u matematici i 1018 podjednako udaljen od beskonačnosti kao i broj 1. (Zapravo i mnogo, mnogo veći brojevi se danas relativno lako simbolički predstavljaju korišćenjem novih vrsta matematičke notacije. Ko želi prilično nežan uvod u hijerarhiju zaista velikih brojeva, sa ciljem da se stigne do neshvatljivo ogromnog Grejemovog broja, evo jednog iz pera briljantnog Tima Urbana.) Jasno je da ograničeni ljudski umovi nisu osposobljeni za baratanje tako velikim brojevima. Jedino napredak superračunara i računarski-potpomognutih dokaza može pomoći da se provere ove ideje o dalekim ostrvima i izgubljenim kontinentima matematičkog okeana. Kao što je u jednom drugom kontekstu rekao Nils Bor: „Vaša teorija je suluda – ali ne dovoljno suluda da bi bila istinita!“