![]() | ![]() |
![]() |
| ![]() |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Intel Single-Chip Cloud Computer
Uz pomoć akademske zajednice, Intel pokreće inicijativu za drugačiji pristup razvoju procesora budućnosti
Paradigma softverske revolucije za našu redakciju nije iznenađenje. Još daleke 2007. godine (SK 9/2007) govorili smo o kraju „besplatnog ručka”, koji je softver uživao u sverastućem napretku hardvera. Tada smo istakli važnost novog načina razmišljanja, gde je ravnoteža između dva fundamentalna sveta računarskih tehnologija pomerena ka softveru. Godinu dana kasnije (SK 7/2008), osvrnuli smo se na pojam paralelizacije i korišćenja višejezgarnih procesora. U tom trenutku izraz višejezgarni označavao je pre svega dvojezgarne (u najboljem slučaju četvorojezgarne) procesore, a danas taj izraz možemo da primenimo i na proizvode sa osam ili više procesorskih jedinica.
My name is Klaud... Čip Klaud Jedno posebno rešenje, svetu isporučeno u obliku istraživačke platforme ili „konceptualnog vozila”, kako Intel voli da ga oslovljava, zaslužuje poseban osvrt na osnovnu ideju, ali i njegove mogućnosti i potencijalnu primenu u vremenu koje sledi. Pomenuto rešenje nosi naziv Single-Chip Cloud Computer (SCC). Ovaj proizvod predstavlja, kako njegovi stvaraoci vole da kažu, dizajn procesora druge generacije Intelovog programa razvoja po imenu Tera-Scale. Prvu generaciju činilo je rešenje sa 80 procesorskih jezgara, dok SCC čini 48 jezgara. Jezgro nije novo – u pitanju je nama dobro poznati P54C (80502), jezgro iz serije originalnih Pentium procesora. Iako reč Cloud zvuči pomalo preterano u imenu Intelovog rešenja, ne treba biti previše inventivan pa razumeti da jedna ovakva mnogojezgarna (many-core, ne multi-core) platforma može u budućnosti da posluži kao centar podataka (eng. data center) na samo jednom čipu. No, nije sve tako jednostavno. Verovatno se pitate zašto Intel nije predstavio završeno, komercijalno rešenje zasnovano na ovom konceptu. Odgovor je jednostavan – Imajući u vidu krilaticu „Najpametniji ljudi ne rade za vašu kompaniju”, čelni ljudi razvoja u Intelu odlučili su da SCC ne razvijaju unutar svojih kapaciteta, već da iskoriste umove akademske zajednice sa svih kontinenata. Hrabar i neverovatan potez kompanije, od koje tako nešto zaista nismo očekivali. Jedna od institucija sa kojima Intel sarađuje zove se EPFL (École Polytechnique Fédérale de Lausanne) i nalazi se u Švajcarskoj. Ova akademska organizacija je čak dve svoje laboratorije (zajedno sa profesorima i doktorantima) posvetila Intelovom rešenju, a među onima koji na ovoj platformi izgrađuju budućnost računarstva je i Darko Petrović, 28-godišnji doktorant-istraživač koji je, nakon završenih studija na beogradskom ETF-u, svoje postdiplomske studije započeo u Luganu, a nastavio na EPFL-u. Sa Petrovićem smo razgovarali o samoj platformi, kao i o radu njegove laboratorije na SCC-u. Višejezgarna priča i njeni problemi Pravljenje kvalitetnog višejezgarnog procesora nije lako. Suprotno mišljenju da je potrebno samo „nalepiti” što više jezgara (obradnih jedinica), i to po principu ’što više, to bolje’ ili ’od viška glava ne boli’, izrada kvalitetnog višeprocesorskog sistema zahteva pažljivo projektovanje. Najveći izazov u ovom domenu svakako je saradnja obradnih jedinica sa memorijom. Objašnjenje ovog problema veoma je jednostavno. Snaga samih procesora rasla je mnogo brže nego brzina pristupa memoriji, te je u današnje vreme pristup memoriji postao usko grlo. Rešenja su godinama tražena u hardveru i bili smo svedoci pojavljivanja različitih tehnika naprednog keširanja, predikcije grananja i pre-fetch mehanizama. Povećanje broja jezgara je u ovakvom tehničko-tehnološkom kontekstu samo pojačalo bojazan da postojeća memorijska rešenja neće omogućiti lagodan rad. Razume se, deljenom memorijskom podsistemu sada veliki broj obradnih jedinica konkurentno pristupa, i tu nailazimo na prvi veliki problem višejezgarnih sistema. Direktna posledica ove činjenice jeste to što se rešenja više ne mogu tražiti u hardveru. Softver, preuzevši palicu od manje fleksibilnog brata, ima zadatak da reguliše probleme u domenu: • pristupa, • integriteta i • konzistentnosti podataka. Na pitanje šta predstavlja ključni izazov u razvoju rešenja višejezgarnih procesora, posebno imajući u vidu sisteme sa 16 i više procesorskih jezgara, naš sagovornik ističe pitanje koherencije keševa. „Bez keš koherencije, na koju se softver praktično bez izuzetka oslanja, veliki deo softvera mora se praktično pisati od nule”, kaže Petrović, i dodaje da je eliminacija tako važnog aspekta upravljanja keš memorijom zapravo i odgovorna za promenu paradigme upravljanja deljenom memorijom. Namesto „shared memory” modela, Intel SCC koristi „message passing” paradigmu, što objašnjava MPB elemente u njegovoj strukturi. U pojašnjenju modela koji koristi rešenje, Petrović ocenjuje da „Intel SCC čini posebnim upravo nedostatak koherencije”. Naime, neko jezgro u strukturi SCC-a može u svom kešu da ima podatak koji se razlikuje u odnosu na primarnu kopiju tog istog podatka u operativnoj memoriji. U takvoj situaciji hardver nema ingerencije po tom pitanju, te je ostavljena mogućnost integracije gotovo bezgraničnog broja jezgara. Pristup deljenoj memoriji je stavljen na sto programera i oni moraju o njemu da vode računa u potpunosti. Petrović ovo dodatno objašnjava kao „ideju prema kojoj se deljena memorija izbegava i jezgra komuniciraju putem prosleđivanja poruka, kao što je slučaj u standardnim računarskim mrežama”. Moć u rukama programera Akademska platforma kakva jeste, Intel SCC ne bi bio interesantan kada bi softver za njega morao biti napisan „od nule”. Sa ciljem olakšavanja upotrebe platforme, Intel je razvio komunikacionu biblioteku po imenu RCCE. Istraživačima, čiji je posao na višim nivoima apstrakcije kada je korišćenje ove platforme u pitanju, mogu u potpunosti da se oslone na RCCE i da „bez razumevanja svakog detalja procesora” direktno projektuju i implementiraju svoje ideje. S druge strane, za one čiji posao zadire „ispod haube” ovog API-ja važna je informacija da je RCCE otvorenog koda, te da omogućava jednostavno razumevanje osnovnih koncepata programiranja platforme SCC. Na naše pitanje u vezi sa iskorišćenim procesorom P54C kao osnovnom gradivnom jedinicom, a u smislu ograničavajućih faktora po sveukupno rešenje, Petrović ističe da se Intel potrudio da razvojnih alata ne nedostaje. „Uz SCC dolazi modifikovana verzija Linuxa sa potpuno funkcionalnim kompajlerom i svim standardnim bibliotekama, a bitno je napomenuti i to da svako jezgro ima svoju instancu Linuxa, potpuno nezavisnu od ostalih”, objašnjava on, ističući da ova osobina omogućava nezavisnost jezgara od ostalih na samom čipu. Osnovni projekat na kojem i on učestvuje jeste razvoj biblioteke efikasnih primitiva za grupnu komunikaciju između jezgara poput, recimo, broadcasta. Znanja koja su potrebna za bavljenje jednim takvim projektom uključuju dobro razumevanje konkurentnog programiranja i arhitekture računara kao bitne tehničke preduslove, dok se i poznavanje distribuiranih računarskih sistema i mreža svakako dobro uklapaju u model jednog istraživača-saradnika na ovoj platformi. Upitali smo našeg sagovornika šta istraživačima nedostaje u postojećem rešenju ove platforme, u smislu hardvera. On nam je, bez mnogo razmišljanja, ukazao na nedostatak hardverske podrške za virtuelizaciju, ali je pohvalio činjenicu da je SCC dogradivo rešenje. Naime, njegov poseban deo je specijalni FPGA, koji služi kao mesto za dodavanje, te Intelovi inženjeri mogu, shodno posebnim zahtevima istraživača, dodati raznorazne elemente, poput hardverskih brava za međusobno isključenje, „test/set” bitove, atomične brojače ili kontrolere međujezgarnih prekida. • • • Slažemo se sa Petrovićem da uspeh ove istraživačke platforme ponajviše zavisi od akademskih institucija kojima je Intel poverio ulogu odeljenja za razvoj. Različitost ovih institucija svakako je najznačajniji aspekt čitavog razvoja platforme. Pomenuto „konceptno vozilo” u očima tih raznorodnih institucija svakako izgleda potpuno drugačije. Petrović to lepo opisuje: „Neke istraživače interesuje motor tog vozila, neke potrošnja u gradu, a nekima služi kao terenac”. Upravo je ta raznolika potreba, kao i rešavanje različitih problema u domenu ove platforme najveća garancija za dobar razvojni put koji čeka Intel SCC. Ipak, ne treba očekivati komercijalne rezultate tako brzo. Svakako će proći još koja godina dok ne vidimo oblak u jednom čipu kao platformu za iznajmljivanje. Ne možemo da se ne zamislimo zbog čega na mapi nema nijedne institucije u Srbiji koja je u ovom programu. Analizom prijavne forme ne nalazimo opravdanje za tako nešto, te šaljemo svu svoju podršku našim akademskim institucijama da se priključe ovako prestižnoj grupi. Momir ĐEKIĆ |
![]()
![]()
![]()
![]()
![]()
![]()
![]()
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]()
|
![]() | |
![]() | ![]() |
Home / Novi broj | Arhiva • Opšte teme | Internet | Test drive | Test run | PD kutak | CeDeteka | WWW vodič • Svet igara Svet kompjutera Copyright © 1984-2018. Politika a.d. • Redakcija | Kontakt | Saradnja | Oglasi | Pretplata • Help • English | |
SKWeb 3.22 |