Login
Newsletter
Werbung

Fr, 10. Dezember 2004, 00:00

SETI@Home

Was ist SETI?

setiathome.berkeley.edu

SETI ist ein wissenschaftliches Projekt, das das Ziel hat, die Existenz von außerirdischen Zivilisationen nachzuweisen. Spinnerei? Das dachte ich zuerst auch. Doch bei näherer Betrachtung zeigt sich, daß der Ansatz von SETI durchaus plausibel ist. Und daß wir wissen wollen, ob es da draußen Leben gibt, steht ohnehin außer Frage.

Wie will SETI nun außerirdische Zivilisation nachweisen? Nun, SETI geht von der Annahme aus, daß jede Zivilisation, die hoch genug entwickelt ist, Radiowellen aussendet. Damit ist jetzt nicht gemeint, daß es dort Rundfunk und Fernsehen geben muß. Nein, Radiowellen sind wie das Licht elektromagnetische Wellen, die bei einer Vielzahl von physikalischen Prozessen entstehen, insbesondere in hochentwickelten Zivilisationen. Es spielt keine Rolle, ob diese Wellen gezielt erzeugt oder Nebenprodukt eines anderen Vorgangs sind. Die fundamentale Annahme von SETI ist, daß Zivilisationen solche Wellen erzeugen und daß diese Wellen sich in Frequenzspektrum und Intensität von natürlich erzeugten unterscheiden lassen.

Sollten solche Radiowellen nachgewiesen werden, heißt das natürlich noch lange nicht, daß wir auch eine Bedeutung daraus lesen können. Zu unbekannt wäre die Zivilisation, die dahintersteckt, und zu groß die Entfernung. Diese würde mindestens einige Lichtjahre betragen, und auch Radiowellen bewegen sich "nur" mit Lichtgeschwindigkeit.

Was ist SETI@Home?

Zunächst muß ich noch erklären, wie die Radiowellen eigentlich entdeckt werden. Die Erde wird von allen Seiten mit Radiowellen aus dem Weltall bestrahlt, doch nur ein Teil davon erreicht die Erdoberfläche. Viele Frequenzbereiche werden von der Atmosphäre absorbiert. Man muß sich daher auf Frequenzbereiche beschränken, die gut durch die Atmosphäre dringen. Einer dieser Bereiche liegt zwischen 1 und 3 GHz. Ein großes Radioteleskop auf Puerto Rico (diese Schüssel hat einen Durchmesser von 330 Metern!) sucht auf dieser Frequenz einen Teil des Himmels ab, genaugenommen die Umgebung einiger hundert der nächstgelegenen Sterne. Jede Messung wird mit einem Frequenzband von nur 1 Hz durchgeführt, so daß insgesamt die riesige Zahl von 2 Milliarden "Kanälen" abgesucht wird. Diese Suche liefert die Rohdaten für SETI. SETI selbst kann diese Rohdaten offenbar verarbeiten, doch es kam der Wunsch auf, mit diesen Daten aufwendigere Berechnungen durchzuführen. Das hätte die Rechenkapazität von SETI gesprengt. So kam SETI auf die Idee, die Rechenkapazität Tausender im Internet hängender Computer zu nutzen, die die meiste Zeit nichts oder wenig zu tun haben. Seti@Home war geboren.

Der Erfolg von SETI@Home war durchschlagend. In den ersten Monaten haben sich 1,4 Millionen Rechner an der Suche beteiligt. Derzeit rechnen über 400.000 Computer weltweit zugleich für SETI, was eine Gesamt-Rechenleistung von ca. 6 TFLOPS bedeutet. Tendenz steigend. Diese enorme Resonanz stellte SETI anfänglich vor große Probleme, da nicht genug Serverkapazität vorhanden war, um alle diese Rechner mit Daten zu versorgen. inzwischen sind diese Probleme etwas gemildert, jedoch ist der WWW-Server von SETI@Home immer noch sehr stark belastet.

Warum sollte ich mich an SETI@Home beteiligen?

Zur Beteiligung an dem Projekt gibt es keinen anderen Anreiz als die entfernte Möglichkeit, den Ruhm der Entdeckung einer außerirdischen Zivilisation zu genießen. Andererseits ist das Opfer, das man dafür bringt, auch nicht allzu groß: Je nach Rechner und je nach Einsatz von SETI@Home kostet es zusätzliche Online-Gebühren und zusätzlichen Strom, mehr nicht.

Um den Anreiz zu erhöhen, können Rechner bzw. Benutzer sich in Gruppen organisieren, die einen "sportlichen" Wettstreit austragen können, wer die meisten Daten berechnet. Diese Gruppen sowie umfangreiche Statistiken werden vom SETI-Server verwaltet. Schauen Sie einfach mal rein!

Auch innerhalb der Gruppen kann ein Wettstreit stattfinden, welches Gruppenmitglied die meisten SETI-Blöcke oder die höchste CPU-Zeit schafft.

Wie funktioniert SETI@Home?

SETI@Home stellt für eine große Zahl von Rechnern die Client-Software kostenlos zur Verfügung. Den Quellcode gibt es derzeit nicht, vielleicht um Manipulationen zu verhindern. Den Client kann man vom SETI-Server herunterladen. Er ist nicht groß. Unter Linux bzw. UNIX kann der Client im Hintergrund laufen, wobei man am besten die Priorität mit dem Kommando nice auf 19 (niedrigste) setzt. Da der Client ca. 12 MB Hauptspeicher permanent belegt, empfiehlt sich der Einsatz nur auf Rechnern mit mindestens 32, besser 64 MB, sonst wird die normale Arbeit eventuell behindert. Man sollte auch eine schnelle CPU haben: Ein Pentium-233 rechnet 22,5 Stunden pro Datenblock, ein P II-400 schafft es in 10 Stunden.

Startet man den Client, baut er eine Verbindung zum SETI-Server auf, um sich einen Datenblock zu holen (eine Work Unit, wie es bei SETI heißt). Diese ist ca. 340 K groß und daher recht schnell übertragen. Wenn die Berechnung beendet ist, wird erneut eine Verbindung aufgebaut, das Ergebnis abgeliefert und eine neue Work Unit geholt. Das ist nicht sehr freundlich zur Telefonrechnung, mit der die meisten von uns geplagt sind. Leider unterstützt der Client auch nicht das Holen von Work Units auf Vorrat und nur zu bestimmten Uhrzeiten. Es gibt jedoch Zusatzprogramme, die hier teilweise Abhilfe schaffen, dazu später mehr.

Wie kann ich mitmachen?

Ah, endlich kommen wir zur praktischen Seite!

Installation des Clients

Der Client kann, wie schon gesagt, vom SETI-Server bezogen werden. Es gibt ihn in drei Varianten: für ältere Installationen mit libc5 (aka glibc1), für glibc 2.1 (aktuelle Distributionen), und statisch gelinkt, falls alles andere versagen sollte.

Entpackt man das passende Client-Paket, dann findet man ein Verzeichnis mit einem ellenlangen Namen wie setiathome-1.3.i386-pc-linux-gnu-gnulibc2.1 vor, in dem sich die Dateien README und setiathome befinden. Alles folgende und noch einiges mehr steht in der README-Datei.

Zunächst wird man das ellenlange Verzeichnis in etwas Kürzeres umbenennen wollen:

mv setiathome-1.3.i386-pc-linux-gnu-gnulibc2.1 seti

Für den Fall, daß sich der Client aus irgendeinem Grund beendet, oder wenn man den Rechner öfter neu bootet und einen automatischen Start des Clients will, kann man den Start des Clients in seine crontab einbauen. Eine andere Möglichkeit wäre der Eintrag in die Init-Skripte, worauf ich hier nicht weiter eingehe.

Das ist der Crontab-Eintrag. Er sorgt dafür, daß eine Minute vor der vollen Stunde der Client gestartet wird, wenn er noch nicht läuft. Läuft er schon, passiert nichts. Die Zeile muß natürlich an die lokalen Gegebenheiten angepaßt werden, Option -proxy (siehe unten) bei Bedarf angeben.

59 * * * * cd /path/to/seti && ./setiathome -nice 19 > /dev/null 2>&1 &

Der Client kann als beliebiger User laufen. Man kann einen eigenen User seti dafür einrichten, doch das ist nicht zwingend.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung