Volunteer-Computing

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Volunteer-Computing (zu deutsch: Ehrenamtliches / freiwilliges Rechnen) beschreibt eine Technik der Anwendungsprogrammierung, bei der einzelne Computernutzer Rechnerkapazitäten wie Rechenzeit und Speicherplatz auf freiwilliger Basis einem bestimmten Projekt zur Verfügung stellen, um unter Anwendung des verteilten Rechnens ein gemeinsames Ergebnis zu berechnen.[1][2]

Idee[Bearbeiten | Quelltext bearbeiten]

Hintergrund ist die Überlegung, dass einerseits die für umfangreiche Berechnungen benötigten Supercomputer kostenintensiv sind, und dass andererseits die Hauptprozessoren vieler Rechner (PC oder Smartphone) zeitweise nicht ausgelastet sind, da der Anwender meistens nur mit wenigen Programmen arbeitet, welche nur einen Teil der gesamten CPU-Leistung beanspruchen. Diese ungenutzten Ressourcen möchte man beim verteilten Rechnen nutzbar machen. Hierzu wird eine entsprechende Client-Software auf dem betroffenen Rechner installiert, die diese Aufgaben meistens weitgehend im Hintergrund übernimmt.

Prinzip[Bearbeiten | Quelltext bearbeiten]

Volunteer-Computing muss organisiert werden. Dazu wird eine Software zur Verfügung gestellt, die auf den Clients zur Lösung der speziellen Aufgabe laufen muss. Weiterhin müssen die Aufgaben, die abgearbeitet sind, gerade bearbeitet werden, oder noch verteilt werden müssen, verwaltet werden. Diese Aufgaben übernimmt der Betreiber des Forschungsprojekts, in der Regel also ein Universitätsinstitut.

Will man sich nun an der Problemlösung beteiligen, das heißt die ungenutzte Rechenleistung eines Computers zur Verfügung stellen, lädt man zunächst die Clientsoftware auf den Computer, installiert diese und testet die Installation mittels vorgegebener Testdaten. Danach meldet man sich an der Webseite eines Projektes seiner Wahl an und lässt sich Daten zuteilen, die bearbeitet werden sollen. Nach Berechnung des Datenpaketes, die einige Stunden bis mehrere Wochen Rechenzeit in Anspruch nehmen kann, wird das Ergebnis an die Webseite zurückgemeldet, und man kann sich neue Daten geben lassen. Diese Aufgaben führt die Software automatisch aus, sodass sich auch Laien an den Projekten beteiligen können.

Einsatzgebiete[Bearbeiten | Quelltext bearbeiten]

Volunteer-Computing wird in vielen Bereichen der Forschung eingesetzt, vor allem bei sehr rechenintensiven Anwendungen (z. B. Docking-Simulationen für das Design künftiger Medikamente, die Berechnung von Proteinfaltungsvorgängen, die Suche nach Primzahlen oder die Widerlegung von mathematischen Vermutungen), für deren Bearbeitung die Leistung von herkömmlichen Supercomputern nicht ausreicht, oder für die nur ungenügende finanzielle Mittel zur Verfügung stehen. Volunteer-Computing-Projekte finden sich demnach sehr häufig bei von Universitäten, Stiftungen oder kleinen, bzw. mittelständischen Firmen durchgeführten Projekten.

Konkrete Projekte[Bearbeiten | Quelltext bearbeiten]

Eines der ersten Projekte, welches die Technik des Volunteer-Computing nutzte, war das SETI@home-Projekt der University of California, Berkeley, das somit die Rechenkraft eines teuren Supercomputers erzielte.

Viele Projekte folgten, so zum Beispiel

Heute gibt es fast in allen naturwissenschaftlichen Bereichen verteilte Rechenprojekte, sogar die Industrie bedient sich bereits der Technik.

Eine neue Stufe der Verbreitung erreichte das Projekt Folding@home, das die Fähigkeiten der Spielekonsole PlayStation 3 sowie von ATI-, AMD- und Nvidia-Grafikprozessoren (GPU) nutzt und so eine Leistung von bis zu 4 Billiarden Rechenoperationen pro Sekunde (4 Petaflops) erreicht. Mit bis zu 700.000 angemeldeten PS3-Teilnehmern und regelmäßig etwa 50.000 aktiven Konsolen steht dieses Projekt als leistungsstärkstes verteiltes Rechnernetzwerk aller Zeiten im Guinness-Buch der Rekorde.[3][4]

Siehe auch[Bearbeiten | Quelltext bearbeiten]

Weblinks[Bearbeiten | Quelltext bearbeiten]

 Commons: Verteiltes Rechnen – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. What is volunteer computing? | LHC@home. In: lhcathome.web.cern.ch. Abgerufen am 21. Dezember 2015 (englisch).
  2. Christian Benjamin Ries: BOINC: Hochleistungsrechnen mit Berkeley Open Infrastructure for Network Computing. Springer, 2012, ISBN 978-3-642-23383-8, S. 17 (Erwähnung des Begriffs „Volunteer-Computing“ in einer deutschsprachigen Literatur).
  3. Meldung auf der BBC-Website (englisch)
  4. Folding@home-Statistikseite