Egy darab Linux kernel fut 1024 CPU-n

Címkék

``Utóirat. Igen - mentes minden minix kódtól, és van multi-threaded filerendszere. NEM portolható (386 task switching-et, stb. használ), és lehetséges, hogy soha nem fog mást támogatni, mint AT-merevlemezeket...'' - ezeket a sorokat 1991. augusztus 25-én postázta Linus Torvalds a comp.os.minix hírcsoportba.

Azóta 13 év telt el, és szerintem Linus sem hitte volna soha, hogy a ``gyermeke'' egyszer a világ legnagyobb szuperszámítógépét fogja hajtani.

Pedig az SGI most arra készül, hogy megépítse azt a gépet, amely egyetlen Linux kernel image-et futtat 1024 darab processzoron.A Silicon Graphics Inc. egy olyan Altix szuperszámítógépet fog készíteni National Center for Supercomputing Applications (NCSA) számára, amely egy Linux kernelt fog futtatni 1024 darab Intel Itanium 2 processzoron 3TB shared memóriával.

Idáig a legnagyobb shared-memory szuperszámítógép egy IBM p690-es gép volt, amely 12 darab 32 processzoros node-ból állt.

Az NCSA eddigi cluster számítógépei mind úgy működtek, hogy több Linux kernelt futtattak (node-onként egyet), és mindegyik CPU-nak dedikált, saját maga számára allokálható memória területe volt.

A jelenlegi gép első körben 512/512 processzoron fog egy-egy Linux kernelt futtatni, majd a későbbiekben az összes 1024 processzorra kerül egy darab Linux kernel. Az operációs rendszer az SGI Advanced Linux lesz, amely Red Hat Enterprise Linux alapokon nyugszik.

Az SGI a gép működtetéséhez a NUMAflex shared-memory architecture és a SGI ProPack for Linux anyagokat fogja használni.

A ComputerWorld cikke itt.

Hozzászólások

Egy ilyen gepet nekem is donate-ol6nanak, mplayer fejleszteshez :)

A'rpi

Ha kapsz ilyet, én donate-olom a villanyszámlád. De ez nem ígéret! :D

A cikknek nincs hirerteke. Ez pont olyan, hogy valaki megirja egy ujsagban, hogy XY szervert epittet YZ-vel. Na es akkor mi van. Szerintem az igazi nagy otlet az volt, hogy az SGI a procik kivetelevel gyakorlatilag mindent kozosse tett. A proci brick-eket meg csak pakolod, csak pakolod, csak pakolod a cuccba... A processzorszam az Altixnal bevezetett NUMAflex technologiat tekintve elmeletileg vegtelen, de gyakorlatilag 1024-et tudnak megvalositani, mert hova tudnanak rakni annyi brick-et.

Sziasztok!

Olvasom, hogy..."A cikknek nincs hirerteke..."

???

Annak biztosan lenne, ha ugyanezt meg lehetne csinálni egy OEM XP home-al. :-)

Képtelen ötlet annyi bizonyos :)

Igaz még csak gondolni sem merek rá, hogy mi lenne ha ezt MS Windows-zal csinálná meg valaki?

Bizonyára (az MS szerint olcsóbb windows) liszenszére rámenne egy föld - plútó űrutazás költsége.

Ha már egy Biztalk 2004 Server 9 Millió magyar forintba került.....

Kepzeld el, milyen fasza sorminta lenne, ha kotnenek rajuk monitort! 1024 blue screen! Sot! Az XP kekhalalja iirc themelheto, szooooval ====> COLORFUL MOSAIC OF DEATH!

Ne mondd, hogy nem lenne szep! :) Lehetne windows logot csinalni szines-halalokbol - az evezred technikai vivmanya (biztos patent is kerulne a dologra)!

> Kepzeld el, milyen fasza sorminta lenne, ha kotnenek rajuk monitort! 1024 blue screen! Sot! Az XP kekhalalja iirc themelheto, szooooval ====> COLORFUL MOSAIC OF DEATH!

ROTFLMAO. Ez a temazhatosag igaz? 32x32-es matrixba kellene elrendezni a monitorokat, es Bill Gates arcat mintaznak kekhalal gyanant, ahogy beint a felhasznaloknak mosolyogva, hogy csak ki kell szallni, majd ujra be, es megy majd megint minden (alliteracio rulez)! :)

Azert ennyire nem trivialis az ugy.

Amit te mondasz, azt jelentene, hogy a vilag legnagyobb hazat megepiteni csak abbol allna, hogy csak rakod a teglakat, meg a fodemet, meg a habarcsot egymasra ..... Marhasag. Egy szamitogep valszeg bonyolultabb struktura, mint egy toronyhaz. Termeszetesen itt sem mukodik a "mindenki hozzon magaval meg egy CPU bricket elv".

Csak egy pelda:

CPU cache koherencia fenntartasa: Ha egy CPU cache-ben tart egy adatot, akkor amikor a tavoli processzorok kozul egy megprobalja elerni a cimet, akkor le kell kommunikalniuk, hogy mi is a valos ertek. Ezen a muveletek szama illetve erteke sajnos nem linearisan a CPU-k szamaval, hanem inkabb negyzetesen. Egy ido utan a rendszered a belso bonyolultsagtol roppan ossze, mert a kommunikaci nagy resze nem kapcsolodik szorosan a vegrehajtando programhoz, hanem csak a rendszer koherens allapotanak fenntartasahoz kell.

A hagyomanyos SMP gepek, amikbol a NUMA architektura szarmazik nagyjabol 128 processzorig mentek el (pl. AlphaServer). Ezutan kellet a NUMA, hogy ezen tul birjanak lepni. Komoly kerdes, hogy hol van a NUMA hatara, es ez a gep bizony komoly kiserlet ebbol a szempontbol.

Andrei

Ja megvalami, amennyire en tudom a Cray T3E megszolalasig hasonlo architekturaju gep.

Azt hiszem, hogy maximum 2048 processzorig skalazhato (Alpha 21164), de nem emlekszem, hogy hivatalosan ilyen gep szerepelt volna a top500-ban.

Egy 1900 processzoros T3E1200 biztosan van az amerikai kormanynak. -> www.top500.org

Andrei

Pont ezert nem lehet az elvileg vegtelen CPU szamot elerni. Hogy osszeroppan a rendszer, az ebben az esetben is magatol ertetodo. Egyebkent egy eve mar epitettek egy 512 procis - vagy 256?, azt hiszem Hollandiaban volt - clustert es egesz jol mukodott is. Hogy most kotik ossze oket... istenkem.

A NUMAflex tehcnologiaval kozos diszkteruleted van kozos memoriaval, de parhuzamossan szervezett CPU brick-ekkel. Ha ugy vesszuk, akkor van kulon egy memoria egyseged, egy CPU egyseged es egy hattertar egyseged. Ez teszi lehetove, hogy csak pakold a brick-eket. Persze kell, hogy legyen mibe berakni a oket, kell valami szekreny fele. Az egyes egysegek az Origin 2000-esbol atvett nagy teljesitmenyu router megoldassal vannak egymassal osszekottetesben, az egyes gepek pedig NUMAlink interconnect-en keresztul kommunikalnak egymassal.

Az ujfajta technologia eredmenyekent azok memoria a muvelek (pl.: adatok megosztasa tobb node kozott), amelyek a megszokott clustereken tobb muveletet vettek igenybe, most csak egy vegrahajtast igenyelnek. Ezert olyan bitang gyors szamitasoknal. Azt is megadhatod, hogy egyes alkalmazasokat melyik CPU-n futtatod, es hogy melyik memoria node-rol foglaljon maganak memoria teruletet.

A procik pakolasat a napnal is vilagosabb, hogy nem lehet sokaig csinalni. Ha nagy szamitasokat sok geppel hatekonyan akarsz elvegezni, akkor nem is clustert, hanem inkabb gridet kell epiteni es megirni ra a szoftvert. De szerintem ez is nyilvanvalo.

Varjal, varjal! Ne keverjuk a szezont a fazonnal.

Egy cluster es egy NUMA szamitogep marha messze van egymastol (bar neha az SGI doksikban is felbukkan a cluster titulus, ez marketingtevedes).

Parhuzamos architekturakbol kettot kulonboztetunk meg:

Shared memory multiprocessor (v. symmetrical multiprocessor). Egy kernel peldany fut, a memoria nincs szeparalva, szepen linearisan cimzodik. Tipikus ilyen szamitogepek az HT-s Pentiumok, 2-4-8utas szerverek, IBM pSeries, Cray (Fujitsu) SX-6, HP AlphaServer. Az alapotlet valahol 32-128 processzoros effektiv skalazodassal er veget (HP Integrity, AlphaServer, Sun Fire nagyonsok, IBM p690, Cray T3E).

Distributed memory: Nincs ilyen kozos memoria, ha az elosztott memoriareszekben futo alkalmazasok el akarjak erni egymast, akkor uzeneteket kell valtaniuk. Tipikusan ilyen gepek a sima workstationokbol osszeallitott clusterek. Az ilyen gepeket NAGYON korulmenyes programozni es debuggolni, es nehezebb beloluk kicsikarni a peak performance-t.

Ofkorsz igazan nagy gepet ugy keszithetsz ha a ket megkozelitest kombinalod. A jelenlegi leggyorsabb szamitogepek 95%-a ilyen hibrid (clusterbe kapcsolt SMP). Ide jo pelda az IBM BlueGene, NEC Earth Simulator, HP Integrity Cluster, HP AlphaServer.

A NUMA mas utat jar, mert megprobalja tovabbvinni az SMP-k hatekonysagat, es egyszeru programozhatosagat. Ennek erdekeben azonban el kell fogadni, hogy bizonyos memoriateruleteket lassabban ersz el, mint masokat (innen a neve: Non-Uniform Memory Access). De ami a lenyeg: az egesz memoriat kozvetlenul es egy egysegben cimzed.....

Harom hete voltam Koppenhagaban az idei parhuzamos programozasi konferencian. Meg fogsz lepodni, de az SGI nem olyan bitang gyors a szamitasok soran (infoert megintcsak a top500 cikkeit erdemes olvasgatni, a konferencian frisiitettek)....

A nagyteljesitmenyu szamitasokat igenis clusterekenn vegzik. Azert mert fajlagosan olcso, mert konnyebb tervezni stb. stb.

Pl. IBM Blue Gene (Lawrence Livermore National Laboratory) jovo ev elejen 65000 processzoros cluster lesz. Es 364TFlops peak teljesitmenye lesz. Tok hagyomanyos cluster, viszont leveri a jelenlegi elso 15-20 szamitogepet a vilagon. Na ez gyors.... Kar hogy nuklearis fegyverek kutatasara hasznaljak majd. Ezek szerint megis lehet pakolni egy darabig a procikat, csak jol kell csinalni.

A grid nagyteljesitmenyu parhuzamos szamitasok eseten nem mukodik, legfeljebb trivialis batch rendszeru munkak eseten. Tul nagy a kommunikacios kesleltetes, tulontul lassu lenne, iszonytatoan sok idle resz lenne a vegrehajtasban. A grid redundans filerendszerek hosztolasara valo, meg SETI-re , meg ilyenekre.

Ok, majd ha meglesz a cuccos, rairjuk az oldalara, hogy snq- sux es kozzetesszuk a fotot. Es elerem, hogy menjen rajta a bsd, akar tamogatom a projectet is, te meg huzd le magad a wc-n jol. Te nagyszeru :-) Es szereny. Ahelyett, hogy irigykednel, szedd ossze a gondolataidat. Sziahello. Amugy emlekeztet a stilusod egy bizonyos Lepesmez nevu iszony emberre (www.euroastra.com). Nehogymar atvedd a stilusat. Te dolgod.