Vēsāki superdatori

Pateicoties superdatoru simulāciju ātrumam, sarežģītas parādības, piemēram, laikapstākļu sistēmas, olbaltumvielu locīšana un kodolsprādzieni, kļūst vieglāk modelējamas un saprotamas. Taču tikai neliela daļa no šī paātrinājuma ir ātrāku procesoru dēļ. Tā vietā visizplatītākais veids, kā sasniegt superskaitļošanas jaudu, ir salikt simtiem vai tūkstošiem atsevišķu iekārtu kopās. Savienojot kopā, šāds klasteris izmantos vienu atmiņu un var veikt masīvas simulācijas paralēli, sadalot darbu daudzās mazās daļās.





Tomēr pat šai pieejai ir savas robežas. Pirmkārt, jo lielāka ir atmiņa, jo lielāka iespējamība, ka dažas tās daļas aprēķina laikā neizdosies. Turklāt, jo vairāk mašīnu ir saliktas kopā, jo vairāk siltuma tās ražo. Patiešām, dažos lielos skaitļošanas centros ventilācijas un gaisa kondicionēšanas sistēmas, ventilatori un šķidruma dzesēšanas sistēmas ir grūti nospiestas, lai mašīnas nepārkarstu.

Mountain View, Kalifornijā bāzētais Silicon Graphics, kas pazīstams arī kā SGI, veido dažas no pasaulē lielākajām superskaitļošanas klasteriem. Piemēram, ceturtā ātrākā pasaulē ir Columbia — sistēma, ko SGI izveidoja NASA Eimsas pētniecības centram 2004. gadā. Kolumbijā ir 20 SGI Altix superkopas, katrā no kurām ir 512 procesori, kopā 10 240 procesoru, kuriem ir 20 procesori. - terabaitu atmiņa. Šīs behemota dzesēšana (ko NASA izmanto, lai modelētu problēmas, kas saistītas ar lielu datu apjomu, piemēram, klimata pārmaiņas, magnētiskās vētras un hiperskaņas lidmašīnu konstrukcijas) pašlaik ir ļoti zemu tehnoloģiju lieta: to panāk galvenokārt, pūšot gaisu garām procesoriem ar augstu ātrumu. ātrumu.

Engs Lims Gohs, datorzinātnieks un SGI galvenais tehniskais darbinieks, saka, ka viens NASA administrators viņam teica: 'Es iztērēju miljoniem dolāru jūsu superdatoram, lai mēs varētu veikt simulācijas, kas aizstāj mūsu vēja tuneli, un jūs mums iedevāt jaunu vēja tuneli. .'



Gohs tagad ir vadītājs Projekts Ultravioletais , SGI centieni izstrādāt savas nākamās paaudzes superkopas. Mikroshēmas, ko SGI izstrādā ultravioletajam starojumam, lietojumprogrammas darbosies ātrāk, taču patērēs mazāk elektroenerģijas un ražos mazāk siltuma. Technology Review intervēja Gohu par projektu 2. februārī.

Tehnoloģiju apskats: Kādi ir projekta Ultraviolet mērķi?

Eng Lim Goh: Pēdējos trīs gados esmu pavadījis 80 procentus sava laika ultravioletajā starojumā, lai līdz šīs desmitgades beigām sistēma tiktu piegādāta. Mēs veidojam ASIC [lietojumprogrammām specifiskas integrālās shēmas], lai paātrinātu noteiktas atmiņas funkcijas un padarītu lietojumprogrammas vēsākas. un tiem ir garš attīstības cikls, parasti divarpus gadi.



Mēs sākām ar to, kas mums ir – būtībā ar sistēmu, kas spēj ietilpināt milzīgu atmiņu. Mēs veidojam milzīgas sistēmas, pārvaldot līdz 512 procesoriem, kas koplieto līdz pat desmitiem terabaitu atmiņu. Šādu sistēmu priekšrocība ir tāda, ka jūs varat ielādēt lielas datu bāzes atmiņā bez desmit reižu palēninājuma, kad jums ir jāiegūst dati no diska. Jūs vēlaties, lai būtu iespēja glabāt visus datus atmiņā un zip to lielā ātrumā, kas ir svarīgi uzlabotai biznesa analīzei un informācijai.

Mūsu ASIC atrodas zem [Intel] Itanium procesora ar atmiņu zem katra no tiem, un tie runā viens ar otru, lai lietotājam un operētājsistēmai sniegtu virtuālu, vienotu visas atmiņas skatījumu. Mēs noteikti izmantojam šo zemo izmaksu, jau pieejamo atmiņu. Tomēr līdz ar to parādījās arī uzticamība. Tātad ultravioletajā režīmā mēs ieviešam funkcijas, lai padarītu atmiņu uzticamāku. Piemēram, mūsu mikroshēmojumā ir inteliģenti aģenti, kas var iziet un iztīrīt neizmantoto atmiņu, lai piespiestu daļas, kurām tas neizdosies veikt tīrīšanas, nevis pieteikšanās procesa laikā. Aģenti ātri atdala šo atmiņu, ļoti līdzīgi kā slikta diska vieta.

TR: Dažas no jūsu darbībām, runājot par aģentiem, izklausās pēc tā, ko IBM sauc par autonomo skaitļošanu.



ALNIS: Cilvēki izmanto dažādus nosaukumus, lai padarītu skaitļošanu pašdziedinošāku. Mēs domājām par to, vai mums vajadzētu izmantot autonomo atmiņu vai pašatveseļošanās sistēmas, piemēram, IBM un citus pārdevējus. Bet mēs bijām nedaudz noraizējušies, jo tas rada patiešām lielas cerības.

TR: Kā ar siltuma problēmu? Es pieņemu, ka sistēmās, ko cilvēki veidos, izmantojot jūsu nākamās paaudzes sistēmas, būs pat vairāk nekā 512 procesori, visi vienā telpā, izdalot milzīgu daudzumu siltuma.

ALNIS: Mēs varam izspiest siltumu no plauktiem ar ātrākiem ventilatoriem, bet tad datortelpa kļūst ļoti grūti atdzesējama. Vienīgais veids, kā tikt galā ar lielāku karstumu, ir ātrāk pārvietot siltumu. Ir datorklases, kur, atverot grīdas dēli, saka: 'Nebāciet tur kāju', jo gaiss tur lejā pārvietojas ar ātrumu 100 kilometri stundā.



Tātad otra daļa no tā, ko mēs vēlamies izpētīt, izmantojot Ultraviolet, ir tas, kā samazināt šo siltumu un kā rīkoties ar lietojumprogrammām, kuras netiek mērogotas [tas ir, nedarbojas tik ātri, kā paredzēts, paralēli darbojoties ar vairākiem procesoriem]. Šie divi ir saistīti. Pieņemsim, ka lietojumprogramma vienā procesorā darbojas 100 sekundes. Un pieņemsim, ka 100 procesoros tas darbojas desmit reizes ātrāk - tas darbojas 10 sekundes. Tas ir lielisks uzlabojums, taču, lai to sasniegtu, jūs izmantojat 100 reizes vairāk procesoru. Tādējādi jūs esat tikai par 10 procentiem efektīvs; lietojumprogramma patērē desmit reizes vairāk enerģijas un izdala desmit reizes vairāk siltuma nekā nepieciešams.

TR: Tātad, kā padarīt lietojumprogrammas vēsāku?

ALNIS: Viena liela daļa ir veids, kā mēs sadalām problēmas gabalos un veids, kā mēs tās sadalām procesoriem. Mēs veicām aptuveni 50 klientu lietojumprogrammu analīzi, lai noskaidrotu, kas radās nepareizi ar šīm lietojumprogrammām, kad tās darbojas paralēli. Mēs noteicām četras vai piecas galvenās jomas.

Viens no tiem ir sakaru latentums [aiztures]. Problēma ir tā, ka lielākajai daļai lietojumprogrammu ir nepieciešama pastāvīga sinhronizācija, lai pārliecinātos, ka katrs process ir gatavs pirms nākamās aprēķina darbības. Šī sinhronizācija aizņem daudz laika. Tas ir tāpat kā seši cilvēki, kuri cenšas nostāties taisnā līnijā – viņiem ir jāpārbauda vienam ar otru. Ja ir 60, 600 vai 6000 cilvēku, ir nepieciešams eksponenciāli ilgāks laiks, lai nokļūtu taisnā līnijā.

Otrajā vietā pēc latentuma ir sakaru joslas platuma problēma. Dažreiz vēlaties pārsūtīt daudz datu, un savienojuma biezums starp procesoriem noteiks, cik ilgs laiks nepieciešams, lai šis milzīgais datu gabals tiktu cauri. Ja jūs gaidāt, jūs neskaitāt. Tā ir vēl viena joma, kurā efektivitāte samazinās.

Trešā joma ir slodzes nelīdzsvarotība, kas ir milzīga problēma. Pieņemsim, ka vēlaties modelēt laika apstākļus savā reģionā. Jūs pieņemat, ka gaisa apjoms jūsu reģionā ir milzīgs kubs, un jūs to sadalāt astoņos apakškubos un sadalāt šos apakškubus dažādiem procesoriem. Dienā, kad laikapstākļi lielajā kubā ir viendabīgi, šo procesoru slodze var būt līdzsvarota; bet, ja kādā no apakškubiem ir lokāla turbulence, būs procesori, kas gaida, kamēr citi procesori beigs.

Ceturtā joma ir tad, kad lietojumprogrammai ir nepieciešams datu gabals un dati neatrodas paša procesora kešatmiņā, un tiem ir jāiet atmiņā. Kad tas iziet uz atmiņu, ir milzīga latentuma ietekme.

Tātad tie būtu ultravioletā dizaina principi [uzticamāka atmiņa, mazāks sakaru latentums, lielāks sakaru joslas platums, labāka slodzes līdzsvarošana un mazāks atmiņas latentums]. Pieņemsim, ka jums ir lietojumprogramma, kurā ir 128 procesori, jo tā samazina sakaru latentumu. Šī mūsu izstrādātā mikroshēma krasi samazinās latentumu, kas tagad ļaus šai lietojumprogrammai darboties vairāk procesoru. Vai arī, ja joprojām izmantojat to pašu lietojumprogrammu 128 procesoros, jums vajadzētu darboties labāk un radīt mazāk siltuma.

Sākumlapas attēla paraksts: skats no augšas: tilti savieno 20 mezglu SGI Altix superdatora mezglus, kas atrodas NASA uzlabotajā superskaitļošanas iekārtā.

Mājas lapas attēlu sniedza NASA Eimsas pētniecības centrs/Toms Trovers

paslēpties