Seminarausarbeitung - Fakultät für Mathematik und Informatik

Transcription

Seminarausarbeitung - Fakultät für Mathematik und Informatik
Seminarausarbeitung
Gridcomputing
Seminararbeit im Seminar
Neue Technologien in Internet und WWW
Wintersemester 2003/04
FSU Jena
Vorgelegt von
André Hoffmann
Januar 2004
1
Abstract
Keine andere Branche hat in den letzten Jahren so viel Zuwachs gehabt wie die
IT-Branche. Anfänglich noch teuer und für Wissenschaftler vorbehalten, kriegt
man heutzutage GHz Rechner für wenig Geld zu kaufen. Doch kaum ein
Normalanwender nutzt die immense Rechenkraft, die Desktop PC innewohnen
wirklich aus. Warum also nicht diese brachliegenden Ressourcen für etwas
Sinnvolles nutzen. Diesem Gedanken geht das GridComputing nach. Findet
man nur genug dieser Ressourcen, so erhält vorrangig erstmal eine Rechenkraft,
mit der selbst Supercomputer nicht mithalten können. Wunsch ist es einmal
sämtliche dem Internet zugänglichen Computer jeglicher Bauart so zu
verbinden, das man sich ähnlich dem Stromnetz keine Gedanken mehr machen
muss, wo diese Leistungen (Rechenleistung, Speicherplatz) eigentlich
herkommen.
Diese Seminararbeit soll Einblick in den derzeitigen Stand der Forschung geben
und anhand von Beispielen zeigen, wofür man überschüssige Rechenleistung
heutzutage einsetzt.
2
Inhaltsverzeichnis
1
2
Einleitung .....................................................................................................4
Supercomputer und Cluster..........................................................................5
2.1
Geschichte der Supercomputer & Cluster............................................5
2.2
Was ist ein Cluster?..............................................................................6
2.3
Workstation Cluster .............................................................................7
2.4
Supercomputer vs Cluster ....................................................................8
2.4.1
Der schnellste Rechner der Welt..................................................9
2.4.2
Google ........................................................................................10
3
Grids...........................................................................................................11
3.1
Was sind Grids ...................................................................................11
3.2
Anwendungstypen des Grids .............................................................12
3.2.1
Rechen-Grids .............................................................................13
3.2.2
Data-Grids ..................................................................................13
3.2.3
Kollaborative Computerarbeit....................................................15
4
Globus Toolkit ...........................................................................................16
4.1
Archtiketur .........................................................................................16
4.2
Sicherheitsrichtlinien .........................................................................17
4.3
Informationen.....................................................................................18
4.4
Kommunikation .................................................................................19
4.5
Datenmanagement..............................................................................19
4.6
Ressourcenmanagement.....................................................................20
4.7
Dynamically-Updated Request Online Coallocator (DUROC) .......20
4.8
Fehlererkennung.................................................................................21
5
Anwendungsbeispiele für Grids.................................................................22
5.1
Seti@Home ........................................................................................22
5.2
Folding @Home.................................................................................26
5.3
CERN-Data-Grid (LHC)....................................................................27
5.4
Weitere Beispiele ...............................................................................29
6
Zusammenfassung und Ausblick ...............................................................30
A Glossar
31
B Wichtige Internetadressen
32
C Abkürzungen und Acronyme
32
Literaturverzeichnis
33
Index
34
3
1 Einleitung
In der Wissenschaft, Forschung und Entwicklung ist man immer mit Problemen
beschäftigt, die alle einen hohen Rechenaufwand erfordern. Das lässt sich anhand von verschiedenen Bereichen demonstrieren:
•
•
•
In
naturwissenschaftlichen
(zum
Teil
interdisziplinären)
Fragestellungen und Aufgabenkomplexen werden Theorien entwickelt,
die durch Experimente bestätigt werden. Durch vorherige Simulation
könnte man bestimmte Phänomene vorhersagen, auf die im Ablauf des
Experimentes besonders geachtet werden kann, oder die bisher noch
nicht beobachtet werden konnten (z.B. durch zu kurze Existenz von
Elementen/ Molekülen bei chemischen Reaktionen). Für solche
anspruchsvollen Simulationen sind jedoch enorme Rechenleistungen
erforderlich.
Verschiedene Typen von Applikation beschäftigen sich mit der
Verwaltung, Zusammenfassung oder Analyse von größten
Datenmengen (z.B. bei verteilten Wissensdatenbanken, Signalen, oder
sonstigen Informationen). Diese Aufgaben sind mit einem hohen
Rechenaufwand verbunden.
Zum Verständnis von etlichen hochkomplexen Abläufen sind
interaktive
Simulationen
erforderlich
(Wetterberechnungen,
dynamische Höhenmodellierungen, Teilchenbahnberechnungen, usw.).
Aufgrund der Vielzahl der zu berücksichtigenden Faktoren ist eine
Realisierung nur durch eine hohe Rechenkapazität durchführbar.
Diese drei Beispiele demonstrieren die Notwendigkeit von zeitgemäßen, hochleistungsfähigen Rechentechnologien. Dieser Bedarf wurde und wird mit
modernen Supercomputern (SC) abgedeckt.
Z.B. Intel Delta, Intel Paragon, Cray C-90, Cray Y-MP oder Earth Simulator,
um einige zu nennen. Mit diesen Supercomputern sind folgende Anwendungen
möglich und realisierbar:
-
Simulation komplexer nichtlinearer Phänomene
Entwicklung von Prototypen (in der Wirtschaft und Wissenschaft)
Erforschung wissenschaftlicher Parameter ohne Experimente (z.B. in
der Physik, Chemie oder Medizin)
4
2 Supercomputer und Cluster
2.1 Geschichte der Supercomputer & Cluster
Bereits seit 1964 gibt es Rechner zur Bewältigung paralleler Rechenaufgaben.
Der erste dieser Rechner, der CDC 6600 wurde von der Control Data
Corporation entwickelt. Bereits 1969 war das Nachfolgemodell CDC Cyber 76
10mal so schnell wie der CDC 6600. 1973 erreichten die Supercomputer auch
Deutschland.
Das Regionale Rechenzentrum in Hannover installierte den damals schnellsten
Rechner der Welt mit einer Taktrate von 36 MHz und einer Leistung von ca. 5
MFlops, was einer Leistung von 5 Millionen Gleitkommaoperationen pro
Sekunde entspricht.
Die nächste Stufe der Entwicklung wurde 1976 von der neu gegründeten Firma
Cray Research Inc eingeleitet. Der ehemalige Mitbegründer und Chefentwickler
von CDC, Seymore Cray, hatte sich aufgrund von unterschiedlichen
Auffassungen der zukünftigen Firmenentwicklung von CDC getrennt.
Cray Research Inc. entwickelte mit Cray 1 den ersten Vektorrechner mit einer
Leistung von ca. 160 MFlops und einer Leistung von ca. 130 MFlops bei
Matrizenmultiplikationen. Der Hauptspeicher wurde auf 8 MB erweitert. 1979
kam einer dieser Rechner im Max-Planck-Institut für Plasmaforschung zum
Einsatz.
CDC entwickelte parallel zu Cray Reseach Inc. den Cyber 203 und danach den
Cyber 205, der ebenfalls ein Vektorrechner war. Allerdings hatte CDC bereits
wenig später einen Großteil seiner Kunden an seine Konkurrenten verloren und
ging 1989 Konkurs.
1982 drängten auch erstmals japanische Hersteller auf den Markt der Supercomputer.
Siemens vermarktete die VP100/200/400-Rechner von Fujitsu in den Jahren ab
1985 mit steigendem Erfolg in Hochschule, Forschungseinrichtungen und der
Industrie.
Ab 1988 wurden aufgrund der immer weiter steigenden Hardwareanforderungen die Entwicklung von Rechnersystemen mit multiplen Prozessoren vorangetrieben.
5
So entwickelte Cray mit dem Cray X-MP und der Cray-2 (mit vier CPUs) die
ersten Multiprozessorsysteme.
Ebenso konnte IBM ebenfalls mit dem S/390 Mainframe sich auf dem Markt
behaupten.
1991 kam erstmals der Gedanke auf, Rechenoperationen so zu optimieren, daß
die Rechenlast auf mehrere Rechner gleichzeitig verteilt werden konnten.
Hierzu wurde die Parallel Virtual Machine entwickelt, die mehrere
Workstation Cluster zu einem „lose gekoppelten“ Parallelrechner verband. Um
diese Rechenoperationen weiter zu verbessern und zu verwalten, wurde 1993
das erste Lastverteilungsprogramm entwickelt und somit die Grundlage für
heutige Cluster gelegt.
Seit 1993 gibt es auch einen weltweiten Vergleich der Supercomputer. HansWerner Meurer, der damalige Leiter des Rechenzentrums in Mannheim,
erstellte die Top 500 mit den 500 schnellsten Rechnern der Welt. Um die
Rechenleistung zu vergleichen, wird hierzu der besonders rechenintensive
Linpack-Algorithmus verwendet.
2.2 Was ist ein Cluster?
Ein Cluster ( engl. „Bündel“) bezeichnet eine Gruppe zusammen- und parallelgeschalteter Rechner, die Rechenoperationen untereinander aufteilen, wobei
sich diese Rechner in lokaler Nähe befinden.
Jeder einzelne Rechner, auch Knoten genannt, ist einzeln ansprechbar und
erledigt einen Teil der gesamten Rechenlast.
6
Abbildung 1 Schematische Darstellung eines Clusters
2.3 Workstation Cluster
Workstation Cluster werden im Allgemeinen auch als Cluster „geringerer
Qualität“ bezeichnet. Dies soll bedeuten, daß diese Cluster nicht mehr den
heutigen Leistungsanforderungen gerecht werden. Bei einem Workstation
Cluster werden einzelne Workstations durch ein LAN miteinander verbunden.
Diese sind dann als Parallelrechner oder als einzelne Systeme einsetzbar. Die
Schwachstelle eines Workstation Cluster liegt zumeist in der Bandbreite des
LANs. Die verwendete Netzwerkanbindung ist meist zu gering, um den Cluster
sinnvoll für Großprojekte mit hohem Datenvolumen zu benutzen. Aus diesem
Grund werden Workstation Cluster meist am Wochenende für „Batch-Jobs“
oder für Sicherungsaufgaben herangezogen.
7
2.4 Supercomputer vs Cluster
Supercomputer sind speziell optimierte Rechner. Die einzelnen Hardwarekomponenten sind optimal aufeinander abgestimmt und können so eine hohe
Rechenleistung bei andauerndem Betrieb gewährleisten.
Dem stehen allerdings hohe Anschaffungskosten und erhöhte Wartungskosten
gegenüber.
Bei technischen Defekten im Superrechner wird das ganze Rechensystem
betroffen und kann ausfallen. Demnach ist eine sofortige Wartung schon bei
kleineren Defekten notwendig.
Linux-Cluster haben im Vergleich zu den Supercomputern ein sehr gutes
Preis/Leistungsverhältnis. So kostet ein vollständig aufgebauter Cluster mit ca.
200.000€ nur etwa 1/10 von dem, was ein Supercomputer ähnlicher Leistung
kosten würde.
Bei Clustern ist auch nicht zwingend eine sofortige Wartung bei Defekten
notwendig. Einzelne Ausfälle bei Knoten können durch Verlagerung der
Rechenlasten kompensiert werden. Auch lassen sich einzelne Knoten
abschalten oder aus dem Cluster entfernen.
Dies hat den Vorteil, daß die defekten Knoten alle zusammen bei Bedarf
gewartet und repariert werden können.
Allerdings sind die Hardwarekomponenten in einem Linux-Cluster nicht
speziell für den Dauerbetrieb optimiert und können so häufigere Wartungen
nach sich ziehen.
Ebenso ist die Netzwerkanbindung bei Projekten mit viel Datentransfer eine
mögliche Schwachstelle und kann die tatsächliche Verarbeitungsgeschwindigkeit bremsen.
Desweiteren lassen sich Cluster im Moment noch nicht auf eine beliebige
Größe bringen, da ab einer gewissen Anzahl die Kommunikation untereinander
mehr Leistung verbraucht, als die Hinzunahme neuer Knoten bringt.
8
2.4.1 Der schnellste Rechner der Welt
Earth Simulator (Japan) [Stand 01\2004]
Der Bau des Earth Simulators wurde 1997 angefangen und nach 5-jähriger
Bauzeit im Mai 2002 beendet.
Der Earth Simulator wurde in einer eigens für diesen Zweck konstruierten
klimatisierten Halle aufgebaut. Das Gebäude ist erdbebensicher durch
hydraulische Stelzen, auf denen der Aufbau ruht, außerdem bietet ein über das
Dach gespanntes Stahlnetz, das mehrere Meter neben der Halle geerdet wird,
Schutz vor Blitzschlag.
Abbildung 2. Schematische Ansicht des Gebäudes
Sinn des Projektes ist es, etwaige Veränderungen der Umwelt, Auswirkungen
auf die Natur und das Wetter vorherzuberechnen.
Die Hoffnung besteht darin, daß dieser Rechner den Menschen eine Art
Symbiose mit dem natürlichen Ökosystem ermöglichen soll.
Aufgebaut ist der Earth Simulator aus 640 Prozessorknoten, wobei jeder dieser
8 arithmetische Einheiten enthält. Jedem Knoten stehen 160Gb Arbeitsspeicher
zur Verfügung. Vernetzt untereinander sind diese mit 2*12,3GB/s.
9
Abbildung 3. Architektur des Earth Simulators
Leistung:
Total peak performance: 40 TeraFLOPS
12
(TeraFLOPS= 10 Floating Point Operations pro Sekunde)
Total Main Memory: 10 TeraByte
12
(1 TB = 10 Bytes)
2.4.2 Google
Auch die bekannte Internet-Suchmaschine Google ist, wie auch fast jede andere
WWW-Suchmaschine, ein Cluster. Sie besteht aus mehr als 10000 miteinander
vernetzten Computern, um alle Suchanfragen gleichzeitig bewältigen zu
können.[GDI] Die Daten sind auf mehreren Rechnern verteilt und oft
gespiegelt, so daß der (im schlimmsten Falle komplette) Ausfall eines Rechners
nicht ins Gewicht fällt.
Zudem mindert diese Dezentralisierung die Wartungskosten. Anstatt der
direkten Wartung des ausgefallenen Rechners kann so einfach der defekte
Rechner ausgeschaltet werden. Die anderen Rechner im Cluster übernehmen
dessen Aufgaben. Zur Zeit beherrscht Google die Suche auf 3,307,998,701
Seiten [GOO].
10
3 Grids
3.1 Was sind Grids
Zunächst einmal eine technische Definition:
“Grid is a type of parallel and distributed system that enables the
sharing, selection and aggregation of geographically distributed“
autonomous”resources dynamically at runtime depending on their
availability, capability, performance, cost, and users’ quality ofservice requirements.”[GCI]
desweiteren kann man auch folgende Erklärung anbringen:
“Einer der wichtigsten Erfolgsfaktoren für die Spitzenforschung und
Industrie wird zukünftig darin bestehen, jederzeit schnell und
standortunabhängig auf weltweit verteilte Daten und IT- Ressourcen
zugreifen zu können. Die Grundlage dazu bildet eine hochkomplexe,
weltweit vernetzte Informationsinfrastruktur mit differenzierten
Zugangs- und Administrationsmechanismen, für die sich allgemein der
Begriff “GridComputing” etabliert hat. [...] Die ursprüngliche
Motivation für GridComputing war, daß Rechenkapazität in gleicher
Weise universell und transparent zur Verfügung gestellt werden soll,
wie dies heute für elektrische Energie der Fall ist.”[DMG]
Damit sieht man auch, woher der Begriff “Grid” in GridComputing stammt,
von der englischen Bezeichnung für das Stromnetz, welches in der englischen
Sprache “Power Grid” heißt. Und in der Tat liegt eine deutliche Analogie
zwischen Power-Grids und einem Computer-Grid vor. Denn genauso wenig,
wie man gewöhnlich darüber nachdenkt, wie der elektrische Strom eigentlich
ins Haus kommt, so wenig soll man sich demnächst Gedanken darüber zu
machen brauchen, wie im Moment benötigte Rechenleistung (oder allgemeiner:
benötigte Ressourcen) für den eigenen Computer zur Verfügung gestellt werden
können. Diese Form Sorglosigkeit möchte GridComputing erreichen
Ressourcen sollen einmal überall und permanent zugänglich sein.
11
Ein in unserem Leben nicht mehr wegzudenkender Teil ist das Internet. Es
übermittelt uns Informationen, ohne daß man sich im Detail mit Organisation
und Topologie des Netzes beschäftigen müßte. GridComputing möchte das
Internet an dieser Stelle erweitern. Es versucht, die Beschränkung des
Internets auf reine Informationsübertragung aufzuheben und stattdessen
Rechenleistung, Speicherkapazitäten oder gar ganze Applikationen für die
Netzteilnehmer bereitzustellen.
3.2 Anwendungstypen des Grids
Gemäß dieser Definition soll ein Grid verstanden werden als ein sich selbstorganisierender “Super-Computer”, bestehend aus einer Vielzahl
unterschiedlichster Systeme. Ein wichtiger Aspekt hierbei ist das Attribut
“unterschiedlich”.Teilnehmenden Rechner haben beispielsweise:
• unterschiedliche Prozessortypen
• unterschiedliche Betriebssysteme
• unterschiedliche angeschlossene Geräte,
• unterschiedliche Kapazitäten und
• unterschiedliche Ausstattungen
Obwohl Grids derzeit nur als Pilotprojekte im Einsatz sind, kann man bereits
heute schon fünf Anwendungstypen des GridComputings unterscheiden:
• Verteiltes Supercomputing
• Data-Grids, d.h.
– Computing mit hohem Datendurchsatz
– Computing von datenintensiven Anwendungen
• Computing bei Bedarf
• Kollaborative Computerarbeit
12
3.2.1 Rechen-Grids
Unter dem Begriff Rechen-Grid (engl. computational grid ) versteht man
die
Zusammenfassung der Rechenleistung mehrerer Rechner, wie man es
bereits
von Clustern kennt. Für diese Form des GridComputings ist ebenfalls der
Begriff Verteiltes Supercomputing bekannt.
Damit verbunden ist das Ausnutzen nichtverwendeter Ressourcen:
Nach statistischen Erhebungen sind Desktop-PCs in den meisten
Organisationen weniger als 5% des Tages wirklich beschäftigt[IBM].
Teilweise
trifft dies ebenso auf große Server zu. Und selbstverständlich darf man hier
nicht die privaten PCs vergessen, die den größten Teil des Tages
ausgeschaltet
und damit unproduktiv auf dem Schreibtisch stehen.
Grid-Computing in der in diesem Abschnitt besprochenen Anwendungsform
möchte auf diese ungenutzten Kapazitäten zugreifen. So kann es
beispielsweise sein, daß ein Großrechner mit einer Aufgabe beschäftigt ist,
welche
ihn außergewöhnlich auslastet. Stellt man sich vor, daß er nun eine wichtige
weitere Aufgabe bekommen soll, für diese jedoch keine weiteren
Kapazitäten mehr bereit hält. Mittels des Grid-Computings könnte man
diese neue Aufgabe einem weniger oder gar nicht beschäftigten Rechner
innerhalb unseres Grids übertragen. Dabei sind folgende Vorbedingungen
an den entfernten Rechner zu beachten:
• Die Aufgabe muß ohne unverhältnismäßigen Aufwand auf dem
entfernten Rechner zu erledigen sein.
• Der Rechner im Grid, der die Aufgabe erhalten soll, muß über die
für diese Aufgabe benötigte Hardware, Software und Ressource(n)
verfügen.
3.2.2 Data-Grids
Temporärer vs. permanenter Speicherplatz
Die zweithäufigste Anwendung des GridComputings stellen Daten-Grids
dar. Unter einem Daten-Grid (engl. “Data-Grid”) versteht man ein Grid, in
13
dem jeder Rechner Speicherplatz für die Daten anderer Grid-Teilnehmer zur
Verfügung stellt. Dies kann permanenter oder auch nur temporärer
Speicherplatz sein. Letzteren kann man verwenden, um einen schnelleren
Datenzugriff zu ermöglichen. Der Nachteil in diesem Fall ist natürlich, daß
dieser Speicherplatz nur “flüchtig” ist.
Permanenter Speicherplatz hingegen dient dazu, um Speicherkapazitäten
und Performance zu erhöhen, ist aber auch im Hinblick auf die Sicherheit
der Daten vor Datenverlust interessant.
Sicherheit vor Datenverlust
Wie kann das Grid vor dem Verlust von Daten schützen? Zum Beispiel
durch mehrfache (redundante) Datenhaltung: Daten können dupliziert
werden und auf mehreren Rechnern abliegen, um beispielsweise als Backup
zu dienen.
Verbesserung der Perfomance
Was kann das Grid zur Verbesserung der Performance beitragen? Auch hier
liegt die Antwort in der redundanten Datenablage. Man spricht in diesem
Zusammenhang auch von replication. Dabei besteht nach [DMG] der
Hauptzweck der replication darin, bessere Datenübertragungsgeschwindigkeiten dadurch zu erreichen, daß die Daten von lokal “gecachten”
Datenbanken bezogen werden, anstatt jeweils einzeln über das gesamte
Netzwerk übertragen werden zu müssen. Die Daten können von der jeweils
naheliegendsten Quelle anstatt von einem zentralen Server übermittelt
werden.
Data Striping
Einen weiteren interessanten Ansatzpunkt, um eine Verbesserung der
Perfomance beim Datenzugriff zu erreichen, stellt das Data Striping dar, das
im Grunde wie Raid funktioniert. Hierunter versteht man eine Technik, die
den Effekt eines schnelleren Datenzugriffs simuliert.
Diese funktioniert wie folgt:
Die Daten liegen auf mehreren physischen Geräten zugleich ab. Wenn der
Zugriff auf diese Daten auf eine im voraus bekannte Weise geschieht
(z.B.sequentiell), so werden die Daten nicht von nur einem Gerät gelesen,
sondern nacheinander zeitversetzt von allen diesen Geräten. Auf diese Art
entsteht der Eindruck, als lese man von einem besonders schnellen Gerät.
Tatsächlich aber überlappen sich die Zugriffe auf die verschiedenen Geräte
und führen so zu diesem Eindruck.
14
3.2.3 Kollaborative Computerarbeit
Das Grid kann heterogene und geographisch weit entfernte Ressourcen zu
einer sogenannten virtuellen Organisation(VO) zusammenführen. Ein
Benutzer des Grids kann mehreren virtuellen Organisationen angehören,
welchewiederum zusammen ein noch größeres Grid darstellen. Virtuelle
Organisationen zeichnen sich insbesondere dadurch aus, daß sie einen
• in hohem Maße kontrollierten,
• von Ressourcen-Anbietern und -Konsumenten klar definierten
• in sich geschlossenen
Austausch von Ressourcen ermöglichen. Dabei bezieht sich dieser
Ressourcenaustausch nicht bloß auf Dateien, sondern ebenfalls auf direkten
Zugriff auf entfernte Rechner, Software, Daten und Hardware, die von für
eine bestimmte Problemlösung zusammenarbeitenden Computern benötigt
werden.
Dies soll bedeuten, daß festgelegt ist, wer am Austausch teilnehmen darf
und wer nicht.
Innerhalb einer virtuellen Organisation können Daten in Form von Dateien
oder Datenbanken für alle Mitglieder der Organisation zugänglich gemacht
und damit geteilt werden. Wenn jedes Mitglied Zugriff auf seine Daten
ermöglicht, so ergibt auch dies ein Data-Grid, also gewissermaßen eine sehr
große Datenbank, von der alle Teilnehmer profitieren können.
Im Zusammenhang mit virtuellen Organisationen ist ein Data-Grid aber
nicht nur auf Daten beschränkt. So können hier auch andere Ressourcen
geteilt werden, wie:
Hardware:(z.B. Bandbreite beim Internet-Zugang): Zugang auf das Internet
auf mehrere (unabhängige) Rechner verteilen
Software / Lizenzen: wenn auf einzelnen Rechnern teure Software
installiert ist, so können andere Rechner diese Software benutzen, um die
Lizenz auf diese Weise besser auszunutzen.
Service: teure Spezialgeräte (z.B. ein Elektronenmikroskop) können über
das Grid benutzt werden. Man sendet die zu untersuchende Probe an die
Einrichtung, in der das Mikroskop steht.
15
4 Globus Toolkit
4.1 Archtiketur
Globus ist ein internationales Projekt, welches sich mit der Erforschung und
Entwicklung von Technologien beschäftigt, welche zur einfachen Erstellung
und Nutzung von Grids benötigt werden
Das Hauptproblem welches es dabei zu lösen gilt, ist die koordinierte
Ressourcenverteilung und Problemlösung innerhalb dynamischer
multiinstitutioneller virtueller Organisationen
Die grundlegenden Dienste, die innerhalb von Globus angeboten werden,
bedienen sich der sogenannten Sanduhrarchitektur. Das heißt, daß es in der
Mitte eine sehr geringe Anzahl von Protokollen und Diensten gibt, die
jedoch nach unten auf ein breites Spektrum an Protokollen und Diensten
zugreifen können und nach oben hin auch ein breites Spektrum
ermöglichen. Dies ermöglicht es den Benutzern der API sehr einfach auf
bestehende Protokolle und Dienste aufzusetzen und gleichzeitig vereinfacht
es den Einbau in eigene Applikationen und Dienste einzubauen.
Das Globus Toolkit bietet eine modulare Auswahl an Technologien auf
verschiedenen Protokollebenen zur einfacheren Erstellung von
Applikationen. Ähnlich der Internetarchitektur setzt sich die
Globusarchitektur auch aus mehreren aufeinander aufbauenden
Protokollschichten auf.
16
Abbildung 4. Protokollschichten Globus
Als unterste Schicht gibt es hierbei den ’Fabric Layer’, dieser steuert den
Zugriff auf alle lokalen Ressourcen. Darüber gibt es den ’Connectivity
Layer’. Dieser entspricht in etwa der Internetschicht. Hier kommt zu den
bereits bestehenden Internetprotokollen nur die Sicherheitsarchitektur Grid
Security Infrastructure(GSI) hinzu.
Direkt darüber ist der ’Resource Layer’. In diesem befinden sich die meisten
der Globus Protokolle wieder, wie zum Beispiel Globus Resource
Allocation Manager(GRAM), GridFTP oder Grid Resource Information
Service(GRIS). Hier geht es vor allem die Steuerung, Verwaltung und
Zugriff auf Daten und Ressourcen.
Direkt über dem ’Resource Layer’ und unter der Anwendung gibt es noch
den ’Collective Layer’. Dieser beinhaltet alle höherwertige Protokolle und
Mechanismen, die eine verteilte Ressourcenverwaltung erst möglich
machen.
4.2 Sicherheitsrichtlinien
Grids stehen vor der Herausforderung, daß die Teilnehmer an einer VO
grundlegend den Sicherheitsrichtlinien ihrer zugehörigen Organisationen
unterliegen. Des Weiteren bestehen VOs sowohl als mehrjährige
Kooperationen als auch sehr kurzfristig, beispielsweise nur um ein
Dokument für zwei Personen bearbeitbar zu machen. Daher darf der
17
Aufwand für die Einrichtung und Unterhaltung einer VO nicht den Nutzen
übersteigen
Außerdem stehen diese Umgebungen natürlich vor der Aufgabe, daß
Sicherheit nicht als übermässige Bürde wahrgenommen wird. Daher
ergeben sich die folgenden grundlegenden Sicherheitsanforderungen:
•single sign-on - Nutzer müssen sich im Grid nur einmal
identifizieren.
•delegation - Es ist möglich Programmen oder anderen Ressourcen
seine Rechte bzw. einen Teil seiner Rechte zu übertragen.
•identity mapping - Die globale Identität wird auf eine lokale
Identität mit bestimmten Rechten abgebildet
4.3 Informationen
Grid-Applikationen bewegen sich in einem dynamischen Umfeld, welches
sowohl geographisch
als auch architektonisch (Hard- und Software) sehr heterogen ist.
Ausserdem können sich sehr viele Teilnehmer an einer VO beteiligen.
Demzufolge ist der Teil eines Grids, welcher Dienste findet und überwacht,
sehr kritisch für das gute Funktionieren einer Grid-Applikation.
Dieser Dienst nennt sich bei Globus Monitoring and Discovery Service
(MDS). Er basiertauf zwei grundlegenden Elementen:
•Grid Resource Information Service (GRIS)
Eine Vielzahl von generischen, verteilten Informationsproduzenten,
welche Informationen über einzelne Entitäten anbieten. Die Struktur
dieser Information ist an die Informationsstruktur im Lightweight
Directory Access Protocol (LDAP) angelehnt,
wobei jede Entität aus eine Ansammlung von Objekten besteht,
welche sich wiederum aus Attribut-Wert Paaren zusammensetzen.
•Grid Index Information Service (GIIS)
Höherwertige Dienste, welche die Informationen der einzelnen
Informationsproduzenten sammeln, indizieren, sortieren bzw. auf sie
18
reagieren. Diese Dienste bieten sowohl generischen als auch
spezielle Sichten auf die Daten an.
4.4 Kommunikation
Mit dem Hintergrund, daß die Kommunikationsnetze immer schneller
werden und so Wide Area Networks (WAN) zum Teil bereits
Datenübertragungsraten und Latenzzeiten erreichen, die sich denen von
Local Area Networks (LAN) nähern, ergibt sich daraus natürlich auch die
Möglichkeit, Anwendungen in einem Grid laufen zu lassen,die üblichweise
in lokalen Clustern oder Parallelrechnern liefen. Um solche Anwendungen
möglichst einfach portieren zu können bzw. neue Anwendungen möglichst
universell nutzbar machen zu können, wurde für das Grid das Message
Passing Interface (MPI) in der Version 1.1 implementiert. Diese
Implementierung (MPICH-G2) konvertiert automatisch Daten, die zwischen
Computern mit verschiedenen Architekturen ausgetauscht werden.
Außerdem unterstützt es verschiedene Protokolle bei der Kommunikation.
Das heißt, daß TCP automatisch bei der Kommunikation zwischen
verschiedenen Computern
ausgewählt wird, während innerhalb eines Parallelrechners auf die
herstellereigene MPI-Kommunikation zugegriffen werden kann.
4.5 Datenmanagement
Um die Portierung und die Laufzeitumgebung von Applikationen, die auf
Dateien zugreifen zu vereinfachen, wurde unter Globus die Global Access
to Secondary Storage (GASS) API eingeführt. Diese API stellt unter
anderem folgende Funktionalitäten zur
Verfügung:
•Manuelles Einloggen in verschiedene Sites und FTP-Sites.
•Installation eines verteilten Dateisystems.
19
4.6 Ressourcenmanagement
Die zentrale Komponente des Ressourcenmanagements bei Globus ist der
Globus Resource Allocation Manager (GRAM). GRAM erlaubt es, Jobs auf
entfernten Rechner laufen zu lassen. Die Hauptaufgaben von GRAM sind
folgende:
•Analyse und Auswertung der Resource Specification Language
(RSL) Spezifikationen. Mittels RSL ist es möglich eine Ressource zu
beschreiben. Bei dieser Analyse und Auswertung wird auf
Ressourcenauswahl,
Jobprozessgenerierung
und
-kontrolle
eingegangen.
•Überwachung entfernt gestarteter Prozesse.
•Aktualisierung von MDS mittels der Informationen über die
verwalteten Ressourcen.
Um auf einem entfernten Rechner einen Job laufen lassen zu können, muss
auf diesem ein GRAM gatekeeper laufen. Dies ist ein Serverprogramm,
welches Clients authentifiziert und auf eingehende Job-requests wartet um
dann bei Erhalt eines solchen einen Jobmanager für diesen Job zu starten.
Dieser Job-Manager wiederum ist nun für das Kreieren der zu diesem Job
benötigten Prozesse und für die weitere Kommunikation mit dem Client
zuständig. Dabei kann es sich sowohl um Zustandsänderungen des
Programms handeln als auch um Erfolgs- oder Fehlerrückmeldung bei der
Programmterminierung.
4.7 Dynamically-Updated Request Online Coallocator
(DUROC)
Da es jedoch bei Grid-Applikationen durchaus vorkommt, daß Jobs über
verteilte Ressourcen
und damit auch über verteilte GRAMs eingerichtet werden müssen, wird ein
Programm benötigt, welches die Koordinierung zwischen den
verschiedenen Ressourcenmanagern übernimmt. Dies ist bei Globus die
Aufgabe des Dynamically-Updated Request Online Coallocator (DUROC).
DUROC besitzt zwei Hauptaufgaben:
20
• Es muss die Ressourcenspezifikationen eines Jobs auswerten, um
entscheiden zu können, wie es den Job über die Ressourcen, über die
es Informationen besitzt,
verteilt.
• Die zweite Aufgabe besteht dann aus dem eigentlichen Alloziieren
der Ressourcen. Dazu muss DUROC als client gegenüber den
verschiedenen Ressourcemanagern auftreten um auf ihnen dann die
Teiljobs zu starten.
4.8 Fehlererkennung
Da Grid-Applikationen darauf angewiesen sind, daß der Status aller
Teilprozesse insbesondere im Fehlerfall schnell und zuverlässig übermittelt
wird, wurde außer MDS noch ein weiterer Dienst eingerichtet. Der Globus
Heartbeat Monitor (HBM) ist unter der Maßgabe gebaut worden, daß er
möglichst einfach und damit auch sehr robust funktioniert.
Er ist dafür zuständig, den Ausfall von Prozessen, die sich bei ihm
angemeldet haben, zu erkennen und weiterzuleiten. Außer direkten Globus
Systemprozessen kann er auch Applikation überwachen. Der HBM besteht
aus drei Komponenten:
• HBM Client Library (HBMCL)
• HBM Local Monitor (HBMLM)
• HBM Data Collector (HBMDC)
Der HBMCL wird benutzt, um jeden zu überwachenden Prozess bei dem
pro Host nur einmal laufenden HBMLM anzumelden und bei Prozessende
wieder abzumelden. Der HBMLM überprüft periodisch alle bei ihm
angemeldeten Prozesse und sendet daraufhin die Statusinformationen an
einen oder mehrere HBMDCs. Der HBMDC sammelt die ihm geschickten
Statusinformationen und nimmt sie in die lokale registry auf. Ausserdem
folgert der HBMDC aus dem Ausbleiben von Statusinformationen (timeout) den Ausfall oder Fehlerfall der beobachteten Komponente. Der
HBMDC kann außerdem bei vorher definierten Statusänderungen
selbständig Benachrichtigungen verschicken[GBT]
21
5 Anwendungsbeispiele für Grids
5.1 Seti@Home
SETI@HOME steht für Search for Extraterrestrial Intelligence. Hierbei
handelt es sich um das wohl populärste Projekt seiner Art, das jedermann
zugänglich ist und an dem sich jeder beteiligen kann, der über eine
Internetverbindung verfügt. Das Ziel des Projekts ist es, etwaige
„Botschaften“ von Außerirdischen aus großen Mengen von
Weltraumsignalen herauszufiltern. Da dabei viel Rechenaufwand anfällt,
nutzt man die Bereitschaft freiwilliger Computer-benutzer, ihre
Rechner(kapazitäten) zur Verfügung zu stellen.
Die Idee zu SETI@home stammt aus der Feder von David Gedye, Craig
Kasnoff und Woody Sullivan, zwei Informatikern und einem Astronomen,
die mit SETI vertraut waren und 1996 die Möglichkeit in Betracht zogen,
freie Rechnerkapazitäten auf der ganzen Welt für ihre Zwecke zu nutzen.
Im späteren Verlauf des Projekts übernahmen David Anderson und Dan
Werthimer von der University of California in Berkeley die Projektleitung.
Da ein solches Projekt keinerlei Gewinn abwirft, gab es zu Beginn direkt
das Problem der Finanzierung, da sich kein Sponsor fand, der Geld
investieren wollte ohne die Aussicht auf Profit.
Man fand schließlich doch noch eine Lösung: 50.000$ zahlte die CarlSagan-Stiftung, die es sich zum Ziel gesetzt hatte, die Wissenschaft einer
breiteren Masse zugänglich zu machen und innovative Ansätze zu
unterstützen.
Weitere 50.000$ zahlte „Paramount Pictures“ anlässlich der Kinopremiere
eines weiteren „Star Trek“- Films, da SETI@home thematisch recht gut zu
diesem Genre passte.
Und schließlich steuerte Sun Microsystems die Hardware für SETI@home
bei.
Jedes Objekt strahlt Radiowellen ab, diese Strahlung ist sehr gering aber
nach- weisbar. Für Wasser liegt die Frequenz bei 1,42 GHz. Da Wasser eine
Substanz ist, die im Weltraum häufig vorkommt und unsere Art des Lebens
darauf basiert, wird vermutet, daß die Aliens mit dieser Frequenz ein Signal
senden könnten[ACK]. Genau hier setzt SETI@Home an:
22
Abbildung 5. Radioteleskop von Arecibo
Mit dem Radioteleskop in Arecibo (Puerto Rico) werden Daten empfangen
und dort digital aufgezeichnet. Dieses Radioteleskop ist übrigens das
Größte weltweit mit 305 m Durchmesser. Da es aber im Boden fest
verankert ist und sich nicht bewegen kann, ist es nur möglich damit 33%
Himmels zu erreichen [ACK]. Das Teleskop kann aber nicht für SETI
alleine genutzt werden um gezielt den Himmel abzuscannen, weil andere
Gruppen mit "wichtigeren" Projekten den Vorrang bekommen, deswegen
zweigt SETI einfach nur die Daten ab. Ein weiteres Problem ergibt sich
dadurch, daß man nicht das gesamte Radiowellenspektrum beliebig genau
aufnehmen kann, weil es einfach heute nicht möglich solche enormen
Mengen zu speichern bzw. zu verarbeiten. Deswegen wird auch nur eine
Bandbreite von 2,5MHz (zum Vergleich Farbfernsehen benötigt ca. 6-8
MHz) bei 1,42 GHz aufgenommen, das füllt immerhin noch alle 16 Stunden
ein 35Gb-DLT-Band [ACK]. Die aufgenommenen Signale sind eigentlich
nur Rauschen, infolgedessen lassen sie sich auch nicht komprimieren. Die
Daten werden dann Rechnern in Berkeley zu so genannten "Work Units"
(WU) in 256 Bänder mit je 10kHz Bandbreite zerspalten, von denen jeder
Datensatz 107 Sekunden lang ist und sich untereinander um 20 Sekunden
23
überlappen. Die WUs sind dann ca. 350kb groß und lassen sich über das
Internet verteilen [ACK].
Abbildung 6. Arbeitsweise von Seti
Die Aufgabe des Clienten ist es nun die WUs nach Kandidaten für eine
weitere Untersuchung zu durchsuchen. Da man nicht weiß, wie so ein
Aliensignal aussieht wird nach Spikes (kurze Stöße), Gaußkurven
(Schmalbandsignale [siehe Abb. 4]), Pulses ( 2 Gaußkurven mit gleicher
Stärke hintereinander) und Triplets (3 Gaußkurven hintereinander) gesucht.
Dabei muss noch beachtet werden, daß sich der Sender der Außerirdischen
auf einen Planeten befindet bzw. sich die Erde und das Sonnensystem
bewegt, damit tritt noch der so genannte Dopplereffekt ein, dieser verzerrt
das Signal noch zusätzlich. Da man die Geschwindigkeit nicht kennt, wird
einfach das Signal durch 31555 verschiedene vorgegebene Raten entzerrt
und dabei nach Spikes, Gaußkurven, Pulses und Triplets gesucht. Man
probiert 15 verschiedene Bandbreiten (von 0,07 bis 1200Hz) für das Signal
durch (natürlich mit allen möglichen Doppler-Verschiebungen).
Bei der kleinsten Bandbreite werden über eine Million Tests pro DopplerVerschiebung durchgeführt, was zu 200 Milliarden Berechnungen führt.
Für alle 15 Bandbreiten ergeben sich zusammen etwa 275 Milliarden
Berechnungen. Es werden weitere Tests durchgeführt, die rechenintensive
(wenn auch bereits effizient formulierte) Algorithmen benutzen, von denen
einige speziell für SETI@home entwickelt wurden.
24
Rechnet man nun alle Schritte zusammen, die eine einzige Work Unit auf
dem Rechner durchläuft, so kommt man auf 2,4 bis 3,8 Billionen
Fließkommaoperationen – in Abhängigkeit vom Inhalt der jeweiligen Work
Unit.
Ein AMD Athlon 2200+ XP braucht dafür ungefähr 3 Stunden, Intel
Pentium IV 1700 ca. 4 Stunden und ein Intel Pentium III 500 ca. 12
Stunden. Die besten Ergebnisse werden dann gespeichert und
zurückgeschickt (ca. 1kb groß) [ACK].
Die berechneten WUs werden dann wieder vom Servern in Berkeley
entgegengenommen und überprüft, da nicht auszuschließen ist, daß einige
User ihr Programm manipuliert haben, um mehr Einheiten abzuliefern.
Deshalb werden die Einheiten mehrmals verschickt.
Abbildung 7. Client Seti@Home Screeshot
Zahlen und Fakten (Stand 13.01.2004):
•
•
•
Anzahl der Teilnehmer: 4835437
Berechnete WUs: ≈ 1,2 Mill.
Anzahl aller Rechenoperationen: 4263 Exa FLOPs
Exa = 1018 Trillionen, damit ist SETI@HOME die umfangreichste
Berechnung aller Zeiten
• Theoretische Leistung: 49,97 Tera FLOPS/sec damit besser als
Earth Simulator[SSH].
25
5.2 Folding @Home
Folding@Home ist ein Projekt der Pande Group des Chemistry Department
an der Stanford University (bei San Francisco). Es beschäftigt sich mit der
Simulation von Prozessen in der organischen Chemie (Faltung von
Proteinen), die nur schwer oder überhaupt nicht experimentell erfassbar
sind, da sie einfach zu schnell ablaufen (teilweise im MikrosekundenBereich) oder überhaupt nicht bekannt ist was abläuft.
Proteine sind langkettige Aminosäuren, die als Enzyme, strukturelle
Bestandteile von Knochen, Muskeln, Haaren, Haut, Blutzellen und
Fresszellen vorkommen können. Um die Funktion der Proteine zu
verstehen, muss man etwas über die Form wissen, es reicht nicht aus nur die
beteiligten Atome zu kennen. Bevor Proteine ihre "Arbeit" aufnehmen,
nehmen sie automatisch eine Form an: dieser Prozess wird Faltung genannt.
Wenn man diese Prozesse genau simulieren kann und versteht, ist man
vielleicht in der Lage Krankheiten wie BSE, Alzheimer oder Parkinson zu
heilen bzw. Nanomaschinen auf der Basis von Proteinen zu bauen. [SBF]
Die Berechnung erfolgt im Atombereich, dabei benötigt ein Intel Pentium
III für die Simulation von einer nano (10-9) Sekunde rund einen Tag [LSS].
Die schnellsten bekannten Faltungen einfacher Proteine dauern aber ca. 10 µ
(10-6) Sekunden. Bei komplexen Proteinen kann die Faltung auch einige
milli (10-3) Sekunden dauern, dafür benötigen auch heutige Supercomputer
mehrer Monate.
Das Problem bei Folding@Home bestand darin einen geeigneten
Algorithmus für die parallele Berechnung zu finden, weil die Prozesse
hintereinander ablaufen und von einander abhängen. Der Server schickt dem
Clienten das Modell eines solchen Proteins, dieser rechnet dann kleine
Bewegungen in einer Schrittweite von 1 bis 2 femto (10-15) Sekunden aus.
Die gesamte Länge einer einer Work Unit beträgt 100 pico (10-12)
Sekunden. Dann sendet der Client das Ergebnis zurück und der Server
"addiert" dann alle kleinen Bewegungen zu einer Großen zusammen. Die
Ergebnisse werden dann anhand von Experimenten überprüft.
26
Abbildung 8 Folding@Home Client Screenshot
Wie bei SETI gibt es hier auch User -und Teamstatistiken. Die Punkte
werden aber nicht nach der Anzahl der berechneten WUs vergeben, sondern
nach der Komplexität des berechneten Proteins. Es wurden schon einige
Proteine komplett durchgerechnet, die Ergebnisse der Berechnung stimmen
auch mit der Wirklichkeit überein.[]
5.3 CERN-Data-Grid (LHC)
Bei diesem Beispiel handelt es sich um ein Data-Grid. LHC steht dabei für
Large Hadron Collider, worunter ein derzeit im Bau befindlicher Teilchenbeschleuniger, der einmal der weltweit leistungsfähigste seiner Art sein soll,
zu verstehen ist. Seine Fertigstellung ist für das Jahr 2005 geplant. Mit Hilfe
des LHC soll der Ursprung der Masse untersucht und damit eine Antwort
27
auf eine der grundlegendsten Fragen der Wissenschaft gegeben werden. Der
LHC entsteht derzeit am CERN, der europäischen Organisation für nukleare
Forschung, mit Sitz in Genf (Schweiz).
Dabei werden Protonenbündel 40 Millionen Mal in der Sekunde auf die
Detektoren treffen, was zu Datenmengen bis zur Größenordnung von 100
Gigabytes in der Sekunde führt. Das entspricht der Datenmenge, so CERN,
die entsteht, wenn jeder Mensch auf der Erde gleichzeitig in 20 Telefone
spricht. Für die Verarbeitung und Speicherung der Daten werden
Supercomputer benötigt, die der Rechenkapazität von 100000 PCs
entsprechen.
Die Daten werden nicht wie bisher nur an einem Ort gespeichert und
verarbeitet, sondern auf mehrere Zentren verteilt, um sie transparent zu
nutzen[WWG].
Dazu soll ein in Abbildung 7 dargestelltes hierarchisches System mit
verschiedenen Ebenen (Tiers) verwendet werden. In diesem Modell stellt
das CERN die oberste Ebene(Tier-0) dar. Seine Aufgabe besteht darin,
Experimentdaten zu speichern und zu rekonstruieren. Die Analyse und die
Erzeugung simulierter Ereignisse wird dann in regionalen Tier-1-Zentren
vorgenommen, an die sich in einer weiteren Hierarchie-Ebene (nationale)
Tier-2-Zentren anschließen. Die vierte und fünfte Ebene bilden sodann
Institutsrechner (Tier-3) sowie einzelne Arbeitsplatzrechner (Tier-4).
Der Planung nach sollen die Regionalzentren in Italien, Frankreich,
Großbritannien, Japan und in den USA entstehen. Mit Hilfe des Data-Grids
kann erreicht werden, daß alle beteiligten Wissenschaftler in den
Regionalzentren arbeiten können und dies nicht eigens am CERN selbst
machen brauchen[RSG].
28
Abbildung 8 Schema CERN DATA GRID
5.4 Weitere Beispiele
Es gibt natürlich noch etliche weitere Projekte, die die Rechnerkapazitäten
aus-nutzen, die ihnen von freiwilligen Privatpersonen zur Verfügung gestellt
wer-den. Im Folgenden sollen nur einige Beispiele dafür genannt werden:
Im Bereich Medizin nutzt man die Rechenleistung, um computergestützt
neue Arzneimittel (Computer Aided Drug Design) zu entwickeln, z.B. bei
FightAIDS@home, United Devices Cancer Research Project oder Find-aDrug, oder Distributed Folding geschieht.
Im Bereich Wissenschaft versucht man, mittels einer Monte-CarloSimulation das Weltklima in 50 Jahren vorherzusagen (Climateprediction.net) oder die Evolution zu untersuchen (evolution@home).
Dominiert wird die Landschaft des Distributed Computing von
mathematischen Problemen. Hier werden riesige Primzahlen faktorisiert,
Primzahlzwillinge gesucht oder die Goldbachsche oder Riemannsche
Vermutung Zahl für Zahl geprüft. Näheres hierzu findet man unter Active
Distributed Computing Projects Mathematics oder unter Distributed
Computing Projects.
29
6 Zusammenfassung und Ausblick
Wie an den obigen Beispielen gezeigt wird auf einigen Gebieten der
Forschung GridComputing schon genutzt und man hat es, wie im Beispiel
Seti geschafft, eine Vielzahl von Menschen dazu zu bewegen, ihre
Computer in den Dienst der Wissenschaft zu stellen und eine enorme
Rechenleistung zu erbringen.
Trotzdem ist man dem Ziel, das eines Tages das gesamte WWW ein
einziger Riesenrechner ist, dessen Ressourcen man einfach so benutzen
kann, wie man heutzutage Internet aufruft oder Strom bezieht, noch weit
entfernt. Zum einen fehlt meiner Meinung nach größtenteils noch die
Bandbreite der Internetanbindung und zum anderen die Einstellung der
Nutzer. Bandbreite ist in dem Sinne wichtig, da die ja ausschlaggebend für
eine schnelle Kommunikation der Rechner untereinander ist, zum anderen
kann man bestimmt davon ausgehen, dass die zu übermittelnden Daten
einen höheren Umfang haben, als die relativ kleinen Mengen wie bei Seti.
Und dann wäre da natürlich noch der Faktor Mensch, denn welcher
Normalanwender braucht Rechenkraft von außerhalb, wenn er sowieso
zuviel davon hat. Selbst rechenintensive Anwendungen für den
Hausgebrauch wie Videokodierung, brauchen heute auf gängigen Rechner
nicht mehr als ein paar Stunden, wenn nicht sogar weniger.
Um dennoch eine breite Masse an Internetnutzern zu gewinnen, könnte ich
mir ein ähnliches System vorstellen, wie es einige Firmen mit großen
Clusterrechnern schon heutzutage machen, nämlich die Rechenkraft für
Geld anderen anzubieten.
30
A Glossar
Cluster:(engl.„Bündel“) bezeichnet eine Gruppe zusammen- und parallelgeschalteter Rechner, die Rechenoperationen untereinander aufteilen, wobei
sich diese Rechner in lokaler Nähe befinden.
Globus: ist ein internationales Projekt, welches sich mit der Erforschung
und Entwicklung von Technologien beschäftigt, welche zur einfachen
Erstellung und Nutzung von Grids benötigt werden.
Grid: In den letzten Jahren gab es vor allem im wissenschaftlichen Bereich
einen starken Trend zur Kollaboration bei großen rechen- und
datenintensiven Projekten. Dabei ging es sowohl um den Austausch von
Daten, Rechenzeit, Bandbreite und anderen Ressourcen innerhalb einer
Organisation wie auch zwischen mehreren Organisationen. Grids sind
hierbei die grundlegenden Bausteine, die dieses erst effizient ermöglichen.
Virtuelle Organisation: Das Grid kann heterogene und geographisch weit
entfernte Ressourcen zu einer sogenannten virtuellen Organisation(VO)
zusammenführen. Virtuelle Organisationen ermöglichen den Austausch von
Ressourcen, wobei sich dieser Ressourcenaustausch nicht bloß auf Dateien
bezieht, sondern ebenfalls auf direkten Zugriff auf entfernte Rechner,
Software, Daten und Hardware, die für eine bestimmte Problemlösung
benötigt werden.
31
B Wichtige Internetadressen
•
http://www.rechenkraft.de
Deutsches Portal zum Thema Verteiltes Rechnen
• http://www.globus.org
Homepage Globus Toolkit
• http://setiathome.ssl.berkeley.edu
Homepage Seti@Home
C Abkürzungen und Acronyme
AU
API
DUROC
FLOP
GSI
GRAM
GRIS
GIIS
GRIP
GRRP
GASS
HBM
LAN
LHC
MDS
RAID
SETI
VO
WAN
WU
Artithmetic Unit
Application Programming Interface
Dynamically-Updated Request Online Coallocator
Floating Point Operation
Globus Security Infrastructure
Globus Resource Allocation Manager
Grid Resource Information Service
Grid Index Information Service
Grid Information Protocol
Grid Registration Protocol
Global Access to Secondary Storage
Heartbeat Monitor
Lokal Area Network
Large Hadron Collide
Monitoring and Discovery Service
Redudant Array of Inexpensive Disk
Search for Extraterrestrial Intelligence
Virtual Organization
Wide Area Network
Work Unit
32
Literatur
[ACK]
[DMG]
[GSC]
Anderson, Cobb, Korpela, Lebofsky, Werthimer,
SETI@home: An Experiment in Public-Resource
Computing, 2002.
http://setiathome.ssl.berkeley.edu/~korpela/papers/cacm/
Data Management in an International Grid Project, Wolfgang
Hoscheket al.
http://citeseer.nj.nec.com/hoschek00data.html
Geschichte der Supercomputer und Cluster
http://www.derneuepopel.de/cluster/clusterinfo.html
[GBT]
Globus Project. The globus project: Frequently asked
quetions.
http://www.globus.org/about/faq/general.html.
[GCI]
GridComputing Info Centre,
http://www.gridcomputing.com
Google Dance - Das Index-Update der Suchmaschine Google
http://dance.efactory.de/d-index.php
www.google
IBM - Redbook “Fundamentals of GridComputing”, Viktors
Berstis
IBM 2002, http://www.ibm.com/redbooks
Larson, Snow, Shirts, Pande, Folding@Home and
Genome@Home:Using distributed computing to tackle
previously intractable problems in computational biology
http://folding.stanford.edu/science.htm
Report of the Steering Group of the LHC Computing
Review, CERN/LHCC/2001-004,
http://lhc-computingreview-public.web.cern.ch/lhccomputing-reviewpublic/Public/Report_final.pdf
Science Background of Folding@Home
http://folding.stanford.edu/science.htm
Statistics Seti@home
http://setiathome.ssl.berkeley.edu/totals.html
Ian Foster et al., The Anatomy of the Grid,
http://www.globus.org/research/papers.html#anatomy
Florian Rötzer, Vom World Wide Web zum World Wide
Grid
http://www.heise.de/tp/deutsch/inhalt/co/4681/1.html
[GDI]
[GOO]
[IBM]
[LSS]
[RSG]
[SBF]
[SSH]
[TAG ]
[WWG]
33
INDEX
Grid 3, 11, 12, 13, 14, 15, 17, 18,
19, 20, 21, 27, 30, 32, 33, 34
GridComputing 2, 11, 30, 33
GridFTP 17
HBM 21, 32
HBMCL 21
HBMDC 21
HBMLM 21
identity mapping 18
LDAP 18
LHC 3, 27, 33
MDS 18, 20, 21, 33
replication 14
Resource Layer 17
SETI 22, 23, 24, 25, 27, 33
single sign-on 18
Supercomputer 2, 3, 5, 6, 8, 26,
28, 33
Top 500 6
VO 15, 17, 18, 33
Work Unit 25, 26, 33
Workstation 3, 6, 7
API 16, 19, 32
CERN 3, 27, 28, 29, 34
Cluster 3, 5, 6, 7, 8, 10, 31, 33
Collective Layer 17
computational grid 13
Computing 11, 12, 13, 29, 33
Connectivity Layer 17
Cray 4, 5, 6
Data Striping 14
Data-Grid 13
delegation 18
DUROC 3, 20, 21, 32
Earth Simulator 4, 9, 25
Fabric Layer 17
Folding 3, 26, 27, 29, 33, 34
GASS 19, 32
Globus 3, 16, 17, 18, 19, 20, 21,
31, 32, 33
Google 3, 10, 33
GRAM 17, 20, 32
34