Work unit
Languages | • • |
DC-Projekte teilen ihre Arbeit in einzelne Arbeitspakete, sogenannte "Work units" (WUs), auf. Diese Work units werden an die zur Verfügung stehenden Computer verteilt, von diesen abgearbeitet und schließlich zum Server zurückgesendet. Die Dauer einer Work unit variiert je nach Projekt zwischen wenigen Minuten und mehreren Monaten (zum Beispiel bei GIMPS). Oft gibt es auch eine Frist (Deadline), innerhalb der die WU fertig gerechnet werden muss.
Verteilung von Work units
Bei den meisten Projekten nimmt der Client in regelmäßigen Abständen Kontakt zu einem zentralen Server auf und lädt die nächsten Work units über das http-Protokoll, ähnlich einem Webbrowser.
Gerade kleinere Projekte, die nicht so viele Teilnehmer anziehen, können sich den Aufwand für eine automatisierte zentrale Verwaltung der Work units oft nicht leisten. Deshalb kann man bei manchen Projekten (besonders im Mathematikbereich) auch Work units reservieren, indem man dem Betreiber des Projekts eine Mail schickt, in der man angibt, welchen Bereich man selbst bearbeiten möchte. Immer öfter koordinieren sich die Teilnehmer auch über Einträge der zu reservierenden Bereiche im Forum des Projekts.
Mehrfache Vergabe von Work units
Da nicht alle Teilnehmer an einem Projekt bis zum Ende des selben am Ball bleiben, kommen für viele der ausgegebenen Work units keine Ergebnisse beim Projekt an. Work units müssen deshalb mehrfach ausgegeben werden, bis alle Ergebnisse vorhanden sind.
Mit steigender Popularität von Distributed Computing haben sich leider auch Personen an den Projekten beteiligt, denen ihr persönlicher Rang in den Statistiken wichtiger ist, als das Ergebnis des Projektes. Wenn dann wie bei SETI@home Classic Clients so manipuliert werden, dass gefälschte Ergebnisse (in sehr kurzer Zeit) zurückgeliefert werden, ist die Redundanz vor allem auch notwendig, um durch den Vergleich mehrerer Ergebnisse für eine einzelne WU Manipulationen auszuschließen.
Zu guter Letzt sind Computer auch nicht so zuverlässig, wie sie uns oft erscheinen. Gerade bei sehr langwierigen Berechnungen kann es durchaus vorkommen, dass durch minimale Defekte an der Hardware mal ein Bit im Speicher kippt oder auf andere Art und Weise falsche Ergebnisse zustande kommen. Sogar die Verwendung von Prozessoren verschiedener Hersteller kann zu unterschiedlichen Ergebnissen führen. Vor diesen eher zufälligen Fehlern bei einzelnen Computern schützt die mehrfache Vergabe der Work units, das sogenannte Quorum.
Projekte ohne Work units
Auch wenn es merkwürdig klingen mag, gibt es tatsächlich Projekte, die ohne die Verteilung von Work units funktionieren. Bei einigen Kryptographieprojekten wie zum Beispiel ECCp-109 genügt es, wenn die beteiligten Computer zufällige Anfangswerte für ihre Berechnungen nutzen, so dass die zentrale Erstellung und Verwaltung der Arbeitspakete nicht notwendig ist. Dabei kommt es dann auch nicht darauf an, eine bestimmte Anzahl Arbeitspakete zu berechnen, sondern einfach soviele, bis genügend Ergebnisse mit bestimmten Eigenschaften berechnet wurden und die Verschlüsselung geknackt werden kann.