Disse sidene er
under utvikling, mer informasjon om prosjektet vil komme etterhvert.
Introduksjon
Clustering
Maskinkrevende
dataprosessering har markert seg som et av de områdene innen data
der de største besparelsene nå åpenbarer seg. Tidligere
generasjoner har vært avhengige av stormaskiner med avansert prosessorteknologi
og maskinarkitektur, og dermed vært begrenset til en liten, gitt
produsent/levrandør-skare. Utviklingen innen mikroprosessorer og
PC-arkitektur har nylig gjort det mulig å bruke store mengder små
og billige maskiner, koblet sammen, i stedet. Det finnes nå veldefinerte
og robuste verktøy for slik parallellprosessering (muligheten til
å jobbe sammen på data som en virtuell stormaskin).
Denne sammenkoblingen
av mindre, masseproduserte maskiner kalles for clustering og det
er en metode som brukes mye rundt om i verden idag, spesielt innenfor
univeristeter og større forskningsorganisasjoner (som f.eks. NASA).
Clustering er også en stor markedsfilosofi hos eldre stormaskinprodusenter
som IBM, men disse parallelle
virtuelle maskinene skiller seg fra den mest utbredte filosofien bak denne
typen teknologi, nemlig COTS clustering.
COTS
COTS
(Commodity Off The Shelf) -clustering viser til en skalerbar
teknologi hvor man erstatter stormaskinen (eller maskiner som kommer fra
en spesifikk levrandør) med vidt tilgjengelig teknologi, som PCer.
Dette gir betraktelige kutt i kostnadene for et oppsett med den samme
prosessorkraften, siden teknologien er billigere og man ikke er bundet
til en enkelt levrandør. I tillegg gjør dette at det blir
enklere å skifte ut eller legge til maskiner i et gitt cluster.
Vår (Project
Paybacks) clusterutvikling baserer seg på COTS-clustering der
vi spesielt ønsker å vise hvor egnet Alpha
prosessoren er til slike formål. Men vi tar også for oss forskjellige
ytelsesøkende teknologier som ennå ikke har blitt vidt tilgjengelig.
Et eksempel er nye typer nettverkskommunikasjon, som Dolphins Wulfkit,
PUs PAPERS og MediaFusions
Night
Lights, som enda ikke har etablert seg som store standarder. Vi ønsker
å demonstrere forskjellige sammensetninger av hardware og software
der vi baserer oss på operativsystemet GNU/Linux.
Fri Software
Vi stiller
oss bak GNU-filosofien og benytter det GPL lisenserte GNU/Linux operativsystet.
GNU/Linux, som kan brukes til det meste, er også perfekt som fundament
for et cluster. Som et robust, tillpassningsdyktig, vidt utbredt
og ikke minst billig operativsystem, går GNU/Linux hånd i
hånd med COTS-cluster-filosofien. GNU/Linux har derfor blitt
førstevalget hos utviklingsmiljøene, og det har blitt laget
enorme mengder verktøy for clustering og parallellprosessering
til GNU/Linux. NASA, som er en av hovedaktørene
bak systemet, har kalt dette cluster-feneomenet for et Beowulf-Cluster,
som betegner 'COTS clustering med Fri
Software'. Disse Beowulf-clusterene kjører på
en stor mengde forskjellig hardware med et stort antall forskjellige oppsett,
både med bruk av kommunikasjonsbibliotek som PVM
og MPI, og med reell deling
av minne.
Kommunikasjonsbibliotek
PVM
og MPI er metodestandarder
som man utvikler programmeringsbibliotek fra. Slike metoder må skisseres
og implementeres (med f.eks. programmeringsbibliotek) for at et cluster
skal kunne kommunisere og fordele prosesser. De mest utbredte metodene
brukt i cluster-programvare i dag er MPI
(Message Passing Interface) og PVM
(Parallel Virtual Machine), hvor MPI
er nyere og blir brukt hovedsaklig av bedrifter og proprietære cluster-pakke-utviklere
(som SCALI i Norge). PVM
blir brukt i universitet og forskermiljøer. Det finnes mange syn
på hvilket system som er best, og vi vil forsøke å
gå litt gjennom disse. I tråd med GNU-filosofien finnes det
varianter av begge metoder i pakker som er Fri
Software Disse kommer i form av programbibliotek og servere (deamons),
PVM for PVM, og
MPICH, LAM
og AFMPI for MPI.
Eksempler
I prosjektet
presenterer vi også flere mer spesefike implementasjoner av clustere,
som f.eks. vårt oppsett for seismisk prosessering av data (med SU/DSU).
Vi vil også komme inn på muligheter for videre utvikling av
cluster-systemene og evt. ny utvikling av programvare der det trengs.
Dette er ikke et prosjekt vi vil avslutte etterhvert som vi når
målene - vi kommer til å utvide det i takt med utviklingen
i teknologien. Tanken
bak prosjektet er å presentere GNU/Linux-alternativene til bedrifter
og organisasjoner som prosesserer store mengder data.
Vi ønsker
å komme i kontakt med alle interesserte, og vil være behjelpelige
med informasjon om GNU/Linux-alternativet. Rett alle spørsmål
til vegard@copyleft.no
|