Zahmekoses
02.01.2004, 12:13
Was ist Distributed Computing?
Das Problem
Computer werden in der Wissenschaft heutzutage immer häufiger eingesetzt, um den Menschen bei Forschungen zu unterstützen. In manchen Bereichen (zum Beispiel in der Klimaforschung oder bei Gen-Analysen) wird dazu für Simulationen und andere langwierige Berechnungen sehr viel Rechenkraft benötigt.
Die "übliche" Lösung für dieses Problem sind sogenannte Supercomputer. Diese sind recht groß und bestehen meist aus sehr vielen Prozessoren, die mittels komplizierter Elektronik verbunden sind, um gemeinsam an diesem Problem arbeiten zu können. Allerdings kosten solche Supercomputer einige Millionen Euro, was ihre Anschaffung nur für finanzkräftige Institutionen erschwinglich macht. Forschungsprojekte ohne große Subventionen können da leider nicht mithalten.
Die Idee
Warum soll nur ein einziger, noch dazu recht teurer Computer an dem Problem arbeiten? Es ist doch viel geschickter, das Problem in kleine Happen aufzuteilen und diese Teilprobleme auf mehreren Computern zu berechnen. Dann brauchen diese Computer auch nicht eine solch enorme Leistungsfähigkeit zu haben.
Dein Einsatz
Und genau das ist die Stelle, an der Du in's Spiel kommst. Auch wenn sich durch die Aufteilung des Problems ganz normale PCs nutzen lassen, so ist es den meisten Forschungseinrichtungen doch nicht möglich, sich mehrere hundert oder gar Tausende von PCs anzuschaffen. Andererseits hat dein Computer bestimmt noch Rechenkapazität übrig. Denn wenn du Briefe damit schreibst, der Bildschirmschoner läuft oder du in der Mittagspause bist, dann nutzt dein Computer nur einen verschwindend geringen Teil seiner maximalen Leistungsfähigkeit aus. Ist es nicht eine super Idee, die ungenutzte Kapazität zur Lösung wissenschaftlicher Probleme zur Verfügung zu stellen?
Die Technik
Mit der weiten Verbreitung des Internets sind seit einiger Zeit auch die technischen Grundlagen vorhanden, um solche Projekte durchzuführen. Dazu stellt ein Forschungsteam einen Server im Internet bereit, von dem man sich ein kleines Programm (den sogenannten Client) auf den eigenen Computer herunterladen kann. Wenn dieses Programm dann auf dem eigenen Computer aktiviert wird, verbindet es sich mit dem Server im Internet und lädt von dort ein Datenpaket (auch Work Unit genannt) mit Arbeitsanweisungen. Dabei handelt es sich nur um ein klitzekleines Teilproblem der ursprünglichen Aufgabe. An diesem Teilproblem arbeitet das Programm dann eine ganze Weile (meist mehrere Stunden oder Tage) und schickt die Ergebnisse danach wieder zurück und fordert neue Daten an.
Das Programm benutzt dabei auch nur die ungenutzten Ressourcen des Computers, d.h. wenn man selbst gleichzeitig mit anderen Programmen arbeitet, dann verspürt man keine zeitlichen Verzögerungen durch das Forschungsprogramm. Manche der Programme sind auch so geschrieben, daß sie als Bildschirmschoner laufen und nur dann aktiv werden, wenn sowieso niemand am Computer arbeitet.
Beispielprojekte
Seventeen or Bust (17oB) versucht zum Beispiel eine noch kleinere Sierpinski-Zahl zu finden (es sind jetzt nur noch 11 mögliche Kandidaten übrig).
Great Internet Mersenne Prime Search (GIMPS) sucht nach weiteren Primzahlen.
Drug Design Optimization Lab (D2OL) versucht Medikamente zu optimieren.
Distributed Folding (DF) versucht einen Algorithmus zu finden, mit dem man die Proteinfaltungssequenz perfekt simulieren kann.
Chessbrain entwickelt einen noch besseren Schachcomputer.
Cancer Research (THINK) versucht ein Heilmittel für Krebs zu finden.
CommunityTSC versucht ein Heilmittel für Tuberöse Sklerose zu finden.
RC5-72 versucht eine Nachricht zu entschlüssen, welche mit 72 Bit verschlüsselt wurde. (um somit zu beweisen, dass unsere heutige Sicherheitstechnik nicht gut genug ist.)
SETI@home wertet Daten vom größten Radioteleskop der Welt (Arecibo) aus auf der Suche nach außerirdischen Signalen (^^")
Für mehr Infos unter www.rechenkraft.net. Dort findet ihr eine Liste aller Projekte und eine breit gefächerte Community steht bereit um zu allen möglichen Fragen so gut es geht eine Antwort zu geben.
Schaut einfach mal vorbei. :)
ciao
Zahme
Das Problem
Computer werden in der Wissenschaft heutzutage immer häufiger eingesetzt, um den Menschen bei Forschungen zu unterstützen. In manchen Bereichen (zum Beispiel in der Klimaforschung oder bei Gen-Analysen) wird dazu für Simulationen und andere langwierige Berechnungen sehr viel Rechenkraft benötigt.
Die "übliche" Lösung für dieses Problem sind sogenannte Supercomputer. Diese sind recht groß und bestehen meist aus sehr vielen Prozessoren, die mittels komplizierter Elektronik verbunden sind, um gemeinsam an diesem Problem arbeiten zu können. Allerdings kosten solche Supercomputer einige Millionen Euro, was ihre Anschaffung nur für finanzkräftige Institutionen erschwinglich macht. Forschungsprojekte ohne große Subventionen können da leider nicht mithalten.
Die Idee
Warum soll nur ein einziger, noch dazu recht teurer Computer an dem Problem arbeiten? Es ist doch viel geschickter, das Problem in kleine Happen aufzuteilen und diese Teilprobleme auf mehreren Computern zu berechnen. Dann brauchen diese Computer auch nicht eine solch enorme Leistungsfähigkeit zu haben.
Dein Einsatz
Und genau das ist die Stelle, an der Du in's Spiel kommst. Auch wenn sich durch die Aufteilung des Problems ganz normale PCs nutzen lassen, so ist es den meisten Forschungseinrichtungen doch nicht möglich, sich mehrere hundert oder gar Tausende von PCs anzuschaffen. Andererseits hat dein Computer bestimmt noch Rechenkapazität übrig. Denn wenn du Briefe damit schreibst, der Bildschirmschoner läuft oder du in der Mittagspause bist, dann nutzt dein Computer nur einen verschwindend geringen Teil seiner maximalen Leistungsfähigkeit aus. Ist es nicht eine super Idee, die ungenutzte Kapazität zur Lösung wissenschaftlicher Probleme zur Verfügung zu stellen?
Die Technik
Mit der weiten Verbreitung des Internets sind seit einiger Zeit auch die technischen Grundlagen vorhanden, um solche Projekte durchzuführen. Dazu stellt ein Forschungsteam einen Server im Internet bereit, von dem man sich ein kleines Programm (den sogenannten Client) auf den eigenen Computer herunterladen kann. Wenn dieses Programm dann auf dem eigenen Computer aktiviert wird, verbindet es sich mit dem Server im Internet und lädt von dort ein Datenpaket (auch Work Unit genannt) mit Arbeitsanweisungen. Dabei handelt es sich nur um ein klitzekleines Teilproblem der ursprünglichen Aufgabe. An diesem Teilproblem arbeitet das Programm dann eine ganze Weile (meist mehrere Stunden oder Tage) und schickt die Ergebnisse danach wieder zurück und fordert neue Daten an.
Das Programm benutzt dabei auch nur die ungenutzten Ressourcen des Computers, d.h. wenn man selbst gleichzeitig mit anderen Programmen arbeitet, dann verspürt man keine zeitlichen Verzögerungen durch das Forschungsprogramm. Manche der Programme sind auch so geschrieben, daß sie als Bildschirmschoner laufen und nur dann aktiv werden, wenn sowieso niemand am Computer arbeitet.
Beispielprojekte
Seventeen or Bust (17oB) versucht zum Beispiel eine noch kleinere Sierpinski-Zahl zu finden (es sind jetzt nur noch 11 mögliche Kandidaten übrig).
Great Internet Mersenne Prime Search (GIMPS) sucht nach weiteren Primzahlen.
Drug Design Optimization Lab (D2OL) versucht Medikamente zu optimieren.
Distributed Folding (DF) versucht einen Algorithmus zu finden, mit dem man die Proteinfaltungssequenz perfekt simulieren kann.
Chessbrain entwickelt einen noch besseren Schachcomputer.
Cancer Research (THINK) versucht ein Heilmittel für Krebs zu finden.
CommunityTSC versucht ein Heilmittel für Tuberöse Sklerose zu finden.
RC5-72 versucht eine Nachricht zu entschlüssen, welche mit 72 Bit verschlüsselt wurde. (um somit zu beweisen, dass unsere heutige Sicherheitstechnik nicht gut genug ist.)
SETI@home wertet Daten vom größten Radioteleskop der Welt (Arecibo) aus auf der Suche nach außerirdischen Signalen (^^")
Für mehr Infos unter www.rechenkraft.net. Dort findet ihr eine Liste aller Projekte und eine breit gefächerte Community steht bereit um zu allen möglichen Fragen so gut es geht eine Antwort zu geben.
Schaut einfach mal vorbei. :)
ciao
Zahme