Portal:Folding@Home/Installation/Linux-SMP-Client

Aus Planet 3DNow! Distributed Computing Wiki

Vorbemerkung

Der SMP-Client für Systeme mit mehreren Prozessorkernen liegt momentan (Februar 2011) in der Version 6.34beta vor. Typischerweise erscheint alle drei Monate eine neue Version und die alte lässt sich nicht mehr neustarten.

Der Client läuft weitestgehend problemlos, sodass eigentlich nichts gegen eine Nutzung spricht. Allerdings sind die Deadlines der Work-Units sehr kurz bemessen, sodass sie von etwas älteren Systemen, die nicht durchgängig laufen, möglicherweise nicht eingehalten werden können.

Es kann aber vorkommen, dass der Client die Berechnung mit der Meldung "Folding@home Core Shutdown: FINISHED_UNIT" beendet und das Ergebnis nicht an Stanford meldet. Dafür gibt es unter Hilfsprogramme eine Anleitung.

Installation

Verzeichnis erstellen.

mkdir fah_smp

Ins Verzeichnis wechseln

cd fah_smp

Client herunterladen. Den aktuellen Namen und Pfad des Text-Clienten findet man auf der Download-Seite des Projekts.

http://folding.stanford.edu/German/Download

wget http://www.stanford.edu/group/pandegroup/folding/release/FAH6.34-Linux64.tgz

Achtung: Der obige Dateiname kann veraltet sein, da er mit jeder neuen Beta geändert wird.

Entpacken des tgz-Archivs

tar xzf FAH6.34-Linux64.tgz

Konfigurieren des Clients (mehr Infos siehe unten)

./fah6 -smp -configonly

Wichtig: immer die Option -smp mit angeben, da sonst die aktuelle SMP-WU verworfen wird und der Client in den Uniprozessor-Betrieb schaltet.

Starten des Clients

./fah6 -smp

Oder Starten, sodass der Client im Hintergrund auch ohne Login weiterrechnet

nohup ./fah6 -smp &

Konfiguration des SMP-Clienten

./fah6 -smp -configonly

Folgende Angaben werden abgefragt:

User name [Anonymous]?

Welchem Namen sollen die Punkte der berechneten WUs zugeschrieben werden?

Team Number [0]?

Welchem Team sollen die Punkte der berechneten WUs zugeschrieben werden? Planet 3DNow! hat die Nummer 34361.

Passkey (if you obtained one online)?

Mit den ersten beiden Angaben (Name und Team-Nummer) kann jeder für einen beliebigen Account rechnen, ohne dass der "Inhaber" des Accounts etwas dagegen unternehmen kann. Um mehr Kontrolle über seinen Account zu haben, kann man einen Passkey beantragen und hier eintragen. Möchte man keinen Passkey nutzen, ist diese Option mit Enter zu überspringen.

Ask before fetching/sending work (no/yes) [no]?

Besteht keine dauerhafte Netzwerkverbindung zum Internet, sollte hier yes angegeben werden. Der Client fragt dann nach, wenn er auf das Internet zugreifen will.

Use proxy (yes/no) [no]?

Wird ein Proxy benutzt? Im Normalfall no.

Acceptable size of work assignment and work result packets (bigger units
may have large memory demands) -- 'small' is <5MB, 'normal' is <10MB, and
'big' is >10MB (small/normal/big) [normal]?

Wenn das vorhandene Up-/Download-Volumen des Internetzugangs und der Speicherausbau des Rechners kein Problem darstellen, "big" eingeben.

Achtung: Diese Option wirkt sich auch auf den Speicherbedarf von Folding@Home aus. Mit der Option big braucht Folding@Home teilweise reichlich 1 GB Speicher.

Change advanced options (yes/no) [no]?

yes eingeben um die Optionen für Fortgeschrittene zu ändern.

Core Priority (idle/low) [idle]?

Mit welcher Priorität soll Folding@Home laufen? Im Normalfall ist idle die beste Wahl.

Disable highly optimized assembly code (no/yes) [no]?

Damit CPU-Erweiterungen wie SSE genutzt werden, muss hier no eingegeben werden.

Interval, in minutes, between checkpoints (3-30) [15]?

Intervall in Minuten, in dem die Zwischenergebnisse gespeichert werden.

Memory, in MB, to indicate (877 available) [877]?

Für Folding@Home maximal verfügbarer Speicher in MB. Hinweis: Der Client erkennt den Speicherausbau des Rechners mitunter falsch.

Set -advmethods flag always, requesting new advanced
 scientific cores and/or work units if available (no/yes) [yes]?

Damit auch neuartige WUs geladen werden, die sich noch in der Testphase befinden, muss hier yes eingegeben werden.

Ignore any deadline information (mainly useful if
system clock frequently has errors) (no/yes) [no]?

Sollen Deadlines ignoriert werden? Diese Option sollte auf no gesetzt werden, es sei denn die Systemuhr geht permanent und in größerem Maße falsch.

Machine ID (1-16) [1]?  

Wenn mehrere Clients auf dem selben PC rechnen sollen, müssen diese unterschiedliche Machine IDs haben.

Anschließend kann der Client gestartet werden.


Liste der Kommandozeilenparameter

Der SMP-Client für Linux beherrscht die folgenden Kommandozeilenparameter:

  • -config: Erlaubt dem Anwender die Änderung der Konfiguration.
  • -configonly: Wie oben, jedoch wird nach dem Durchlauf der Konfiguration der Client beendet anstatt im Anschluss die Arbeit aufzunehmen.
  • -help: Zeigt die möglichen Kommandozeilenparameter an und beendet den Client danach.
  • -queueinfo: Zeigt Information über WUs in der Warteschlange. Für jede WU werden Status (READY=Bereit/FINISHED=Beendet/EMPTY=Leer), Ursprungsserver, Datum des Empfangs (GMT-Zeitzone) sowie die Deadline (falls vom Server angegeben) angezeigt.
  • -delete x: Entferne WU Nr. x aus der Arbeitswarteschlange. Dieser Parameter sollte nur verwendet werden, wenn ein schwerwiegender Fehler bei der aktuellen WU aufgetreten ist, den der Client nicht automatisch beheben kann (z. B. nach einem Absturz).
  • -send x: Sendet Ergebnis Nr. x zurück an den Server. Nach dem Sendeversuch wird der Client beendet, unabhängig davon ob der Sendeversuch erfolgreich gewesen ist oder nicht. Verwende "-send all" um alle noch ausstehenden Ergebnisse zu senden. Falls WU x noch nicht fertiggestellt worden ist, beendet sich der Client ohne weitere Aktionen.
  • -verbosity x: Setzt den Detailgrad der Ausgabe. Das Minimum ist 1, das Maximum 9. Der Standardwert ist 3. Dieser Parameter sollte verwendet werden, um mehr Details über die Arbeit des Clients zu erfahren. Dies ist insbesondere nützlich, wenn zur Behebung eines Problems Information an das F@H-Client-Entwicklerteam gesendet wird.
  • -pause: Pause nach dem Beenden und Senden der aktuellen WU. Erlaubt es dem Anwender nach dem Beenden einer WU den Client durch Drücken von Strg-C zu beenden, ohne zuvor neue Arbeitsdaten erhalten zu haben. Dieser Vorgang wird empfohlen, wenn der Rechner längere Zeit nicht mehr eingesetzt wird (z. B. während eines Urlaubs) oder Folding@Home nach dem Beenden der aktuellen WU neuinstalliert oder deinstalliert werden soll.
  • -oneunit: Anweisung an den Client, sich nach der vollständigen Abarbeitung einer WU zu beenden.
  • -forceasm: Anweisung an den Core, SSE/SSE2-Befehle zu verwenden (wenn möglich), selbst wenn zuvor erkannt wurde, dass der Rechner damit evtl. nicht zurecht kommt.
  • -advmethods: Schaltet WUs aus neuen Projekten frei, bevor diese allgemein bei Folding@Home zur Verfügung stehen. Als einer der ersten bei der Erprobung neuer, erweiterter Simulationen ist das Posten von Beobachtungen (postive als auch negative), von Fragen oder Problemen im Folding@Home-Benutzerforum erwünscht.
  • -gpu x: Nutzt die GPU mit der Gerätenummer x zur Berechnung der WUs. Derzeit ohne Funktion.
  • -freeBSD: Ermöglicht die Nutzung des Clients unter FreeBSD.
  • -openBSD: Ermöglicht die Nutzung des Clients unter OpenBSD.
  • -smp x: Weist den Client an mehrere Prozessorkerne zu nutzen. Dabei gibt x die Zahl der zu startenden Threads an. Das Minimum ist 4, das Maximum ist die Anzahl der Prozessorkerne (bzw. 4 bei Systemen mit 2 Kernen). Lässt man x weg, werden alle verfügbaren Kerne genutzt.