[ LUGOS ] Projekt Beowulf

Boris Benko boris.benko na telekom.si
Čet Dec 24 16:30:20 CET 1998


Marko Samastur wrote:

> Hmm... A gre to tako enostavno? So lahko masine cisto poljubne? Kolikor sem

>
> Ja in ne. Naceloma so lahko poljubne, toda ni dobro ce so med njimi
> prevelike razlike.
>

Razlike so nepomembne. Meni LAM tece na RH 4.1, RH 4.2 in RH 5.1.
Brez problemov. Mogoce edino to, da ce je problem diskovno intenziven,
da mora biti na postaji dovolj velik disk, da problem obvlada.

V kolikor je moc delovnih postaj razlicna, mora to tvoj user written program
*upostevati*, da dobis optimalne rezultate.

>
> > do zdaj videl obstaja popatchano jedro 2.0.33, ki omogoca paralelno laufanje
> > Linuxa. Ni mi pa se jasno kaksna programska oprema lahko tece gor. Verjento
> > mora biti pisana za SMP, da izkorisca vse prednosti sistema...
>
> SMP = symetric multiprocessing
> Beowulf = cluster racunalnikov
> Dve popolnoma razlicni stvari in programska oprema se zato precej
> razlikuje (recimo, na SMP lahko procesorji delijo skupen shared memory,
> na clustrih zagotovo ne). Programje bi moral napisati na novo (ali pa
> stakniti taksnega, ki je temu ze prilagojeno, recimo povray).

Eno je strojna arhitektura, drugo pa the way of doing multiprogramming.
SMP je tesno sklopljena racunalniska arhitektura, kjer si procesorji
delijo bistvene vire racunalnika (bus, memory). Rahlo sklopljene arhitekture
pa so take, da ima VSAK procesor svoj bus, ram, itd... Med sabo so procesorji
pogosto povezani v clusterje do recimo 12 CPUjev, med clusterji pa so povezani
z interconnecti.

Tipicno SMP racunalniki dosezejo MAX 64 CPUjev, za normalne smrtnike
pa so bolj twin ali 4 CPU masine.  So tudi vecji SMP racunalniki, ampak tu ze
vec ni cista tesno sklopljena arhitektura.

Rahlo sklopljene arhitekture pa imajo tudi 1024 ali 4096 CPUjev, tipicno pa so
to CPUji male moci. Thinking Machines je bilo podjetje, ki je bilo pionir rahlo
sklopljenih racunalnikov. Zal so sli v stecaj in ne vem, kaj se je z njimi
zgodilo.

Kot sem rekel, eno je strojna arhitektura, drugo pa programska oprema.
Ze v prejsnjem mailu sem napisal, da je nacin komuniciranja lahko
message passing ali (remote) shared memory.

message passing bolj "pristoja" rahlo sklopljenim arhitekturam in hkrati
tudi clusterju delovnih postaj. Problem je naceloma resljiv bolj optimalno
z message passingom, ker je bolj prilagojen topologiji delovnih postaj,
ki so med sabo povezane z pocasnim vodilom (ethernet, tudi 100 mega se
v parallel computingu steje kot pocasno vodilo, kot hitro se steje recimo
PCI vodilo ali kaj vec). Je pa en problem z message passingom. IN sicer
zahteva radikalno nove prijeme v programiranju. Vse se odvija s pomocjo
sporocil in ce kaj ne stima (en proces caka na sporocilo, drugi pa ga ne poslje),

vse skupaj obvisi. Debugiranje je rahlo mucno, ni pa nemogoce.

shared memory bolj "pristoja" tesno sklopljenim arhitekturam, kot so to
tipicno SMP strezniki. Gre za to, da en proces pusti info v pomnilniku,
drugi (ali celo vec procesov), pa to info poberejo in jo obdelajo. To je, s
strani
programerja, nekoliko bolj obicajen nacin programiranja in v praksi bolj
priljubljen. Lazje se ga da debugirati, vse skupaj je manj nevarnosti,
da vam celotna aplikacija nesrecno obvisi. Tukaj pa je podrobnost, ki je
neprijetna ta, da ce si recimo dva procesa izmenjata info, ta info potuje
CEZ VODILO 2x. Ce je n procesov, potem seveda n+1 krat, razen ce ni
kak trik na vodilu, recimo multicasting, kot so to imeli Crayi.
Beowulf, kolikor sem na hitro pogledal, ima shared memory nacin,
ki potemtakem za cluster delovnih postaj ni najbolj optimalen.

Upam, da so navedene info komu pomagale. In da nisem prevec zatezil.
Linux dela odlicno z LAMom. Vredno je poskusiti.

=b

--
============================================================================
Boris Benko, dipl.ing.                | E-mail: Boris.Benko na telekom.si
Telekom Slovenije, PE Murska Sobota   |         B.Benko na s-gms.ms.edus.si
Senior Prog./Sys admin./Informatik    |         Boris.Benko na computer.org
Slu§ba za informatiko                 | Phone: (work) +386 69 31 676
                                      |        (work) +386 69 37 800 21
                                      |        (home) +386 69 32 592
===========================================================================






Dodatne informacije o seznamu Starilist