Kurze Einrichtung des BOINC Managers. Freiwilliges Computing auf Ihrer Linux-Maschine BOINC Server Virtual Machine

|

Speichern und schließen Sie die Datei und führen Sie dann boinc-client aus, damit sich der Server verbindet [E-Mail geschützt]

sudo-Dienst boinc-client start

Schritt 4: Überprüfung des neuen Hosts

Schritt 5: Überprüfen des Serverstatus

Um den Status des Servers oder der Tasks anzuzeigen, verwenden Sie den Befehl:

Dieser Befehl liefert allgemeine Informationen [E-Mail geschützt], und meldet auch aktuelle Aufgaben, die auf diesem bestimmten Host ausgeführt werden.

Die Ausgabe dieses Befehls sieht in etwa so aus:

boinccmd --get_simple_gui_info
======== Projekte ========
1) -----------
Name: [E-Mail geschützt]
Master-URL: http://setiathome.berkeley.edu/
Benutzername: stmiller
team_name: SETI.USA
Ressourcenanteil: 100.000000
user_total_credit: 33159.675770
user_expavg_credit: 1409.252845
host_total_credit: 0,000000
host_expavg_credit: 0,000000
nrpc_failures: 0
master_fetch_failures: 0
Masterabruf ausstehend: nein
Scheduler-RPC anstehend: nein
Trickle-Upload ausstehend: nein
über Account Manager angehängt: nein
beendet: nein
Suspendiert über GUI: nein
Fordern Sie keine weitere Arbeit an: nein
Festplattennutzung: 0,000000
letzter RPC: 1423684749.199424
heruntergeladene Projektdateien: 0.000000
GUI-URL:
Name: Messageboards
Beschreibung: Korrespondieren Sie mit anderen Benutzern auf der [E-Mail geschützt] Schwarzes Brett
URL: http://setiathome.berkeley.edu/forum_index.php
GUI-URL:
Name: Hilfe
Beschreibung: Stellen Sie Fragen und melden Sie Probleme
URL: http://setiathome.berkeley.edu/forum_help_desk.php
GUI-URL:
Name: Ihr Konto
Beschreibung: Zeigen Sie Ihre Kontoinformationen an
URL: http://setiathome.berkeley.edu/home.php
GUI-URL:
Name: Ihre Präferenzen
Beschreibung: Zeigen Sie Ihre Computereinstellungen an und ändern Sie sie
URL: http://setiathome.berkeley.edu/prefs.php?subset=global
GUI-URL:
Name: Ihre Ergebnisse
Beschreibung: Zeigen Sie Ihre Berechnungsergebnisse und -arbeiten der letzten Woche (oder länger) an
URL: http://setiathome.berkeley.edu/results.php?userid=9351194
GUI-URL:
Name: Ihre Computer
Beschreibung: Zeigen Sie eine Liste aller Computer an, auf denen Sie ausgeführt werden [E-Mail geschützt]
URL: http://setiathome.berkeley.edu/hosts_user.php?userid=9351194
GUI-URL:
benenne dein Team
Beschreibung: Zeigen Sie Informationen über Ihr Team an: SETI.USA
URL: http://setiathome.berkeley.edu/team_display.php?teamid=115396
GUI-URL:
Name: Spende
Beschreibung: Spende an [E-Mail geschützt]
URL: http://setiathome.berkeley.edu/sah_donate.php
======== Aufgaben ========
1) -----------
Name: 25fe12ab.24545.17667.438086664204.12.226_0
WU-Name: 25fe12ab.24545.17667.438086664204.12.226
Projekt-URL: http://setiathome.berkeley.edu/
Berichtsschluss: Mittwoch, 4. März, 02:06:18 2015
meldebereit: nein
Serverbestätigung erhalten: nein
letzte CPU-Zeit: 0.000000
Zustand: heruntergeladen
Scheduler-Status: geplant
Ausgangsstatus: 0
Signal: 0
Suspendiert über GUI: nein
active_task_state: WIRD AUSGEFÜHRT
App-Versionsnummer: 701
Prüfpunkt-CPU-Zeit: 352.733700
aktuelle CPU-Zeit: 378.866400
Fraktion erledigt: 0,088431
Swap-Größe: 110309376.000000
Größe des Arbeitssets: 40030207.999996
geschätzte verbleibende CPU-Zeit: 2505.901220

Installation.

Der Installationsprozess für BOINC Manager Version 6.4.1 wird unten beschrieben.
(UPD: Einige Screenshots von Version 6.6.28 wurden ersetzt - wo es Änderungen gegenüber der alten Version gab).

Wir starten den Installer, wir sehen das erste Konfigurationsfenster:



Der erste Pfad, das Programmverzeichnis, ist der Ort, an dem der BOINC-Manager selbst installiert ist. Wir verlassen standardmäßig.
Der zweite Weg, Datenverzeichnis - wo Projektdaten gespeichert werden: Berechnungsmodule, Aufgaben usw. Ich empfehle, den Standardpfad so zu ändern, dass sich alles, was mit BOINC zu tun hat, im selben Ordner befindet.

Die nächsten drei Kontrollkästchen bleiben dem Geschmack überlassen, aber ich entferne das erste, "Bildschirmschoner verwenden". Was würde nicht stören.

Wenn während der Installation Fehler beim Lesen der Setup-Initialisierungsdatei geschrieben wird, lesen wir
Kurzübersetzung:
1. Führen Sie das Installationsprogramm mit der Option /a aus
2. Geben Sie an, auf welcher Festplatte sich Windows befindet
3. Wie gewohnt installieren

Das war's, der anfängliche Setup-Vorgang ist abgeschlossen, und nach Abschluss der Installation fordert Sie das Programm auf, Ihren Computer neu zu starten.

Nach dem Neustart sehen Sie in etwa diesen Bildschirm:

Deshalb gehen wir zu "Erweitert" - "Programmeinstellungen" und beginnen dort mit dem Hosten.
(Erweitert - Optionen - Allgemein - Sprachauswahl - falls Sie sich plötzlich nicht für eine russische Maschine entschieden haben).

Einstellungen:

Registerkarte Allgemein

* Wahl der Sprache der Benutzeroberfläche

* Intervall zwischen den Verbindungsversuchen des Managers mit dem Projektserver. Standardmäßig verbindet sich der Manager alle 60 Minuten automatisch mit dem Server: um fertige Aufgaben zu senden und neue Berechnungen zu erhalten. Wenn Sie möchten - ändern, habe ich es standardmäßig verlassen.

* Manager beim Systemstart ausführen? Ich denke, es ist logisch, damit anzufangen. Wenn Sie jedoch kein Taskleistensymbol benötigen, können Sie es nicht ausführen.

* Exit-Nachricht aktivieren? Wenn es eine Morgendämmerung gibt und Sie den Manager verlassen möchten, wird das folgende Fenster angezeigt:

In diesem Fenster können Sie folgende Einstellungen vornehmen:
* "Beenden Sie den Berechnungsprozess und beenden Sie den Manager." Eine praktische Frage, die nur in der 6. Version des BOINC-Managers auftauchte.
Aktivieren Sie das Kontrollkästchen nicht - der Manager wird nur geschlossen, das Projekt arbeitet weiter.
Aktivieren Sie das Kontrollkästchen – das Projekt stoppt und der Manager wird geschlossen.

* "Meine Auswahl merken und diese Frage nicht noch einmal stellen" - Ich denke, es ist klar, was das zweite Kontrollkästchen bewirkt.

Registerkarte „Verbindungseinstellungen“.



Registerkarte "HTTP-Proxy".



SOCKS-Proxy-Registerkarte



Auswählen eines Elements im Menü „Erweitert“ – „Kundeneinstellungen“

Registerkarte „Prozessor“.



* "Bei Batteriebetrieb"- relevant für Laptops und PCs mit konfigurierter Software, um mit USV zu arbeiten. Höchstwahrscheinlich entfernen wir es, warum müssen wir einen Akku in den Laptop einsetzen?

* „wenn der PC beruflich genutzt wird“- eine sehr notwendige Dohle, müssen wir es sagen. Andernfalls wartet BOINC "3 Minuten" (Standardeinstellung), bis Sie den Computer verlassen.

* "GPU verwenden, wenn der Computer für die Arbeit verwendet wird"- Verwenden Sie eine Grafikkarte für Berechnungen, wenn Sie arbeiten? Wenn ja, führt die Grafikkarte ständig Berechnungen durch, wenn nicht, wartet sie, bis Sie den Computer für "3 Minuten" (standardmäßig) verlassen.

* Das Folgende ist eine Gruppe von Einstellungen für Ästheten: Sie können den Zeitplan festlegen, nach dem BOINC Berechnungen durchführt.

Noch niedriger sind "andere Optionen".
* „Alle 60 Minuten zwischen Projekten wechseln“. Wenn Sie eine Reihe von Aufgaben aus verschiedenen Projekten für Berechnungen hochgeladen haben (z [E-Mail geschützt] und Primegrid), dann ändert der Kunde das Projekt alle 60 Minuten: eine Stunde wird berücksichtigt [E-Mail geschützt], dann wird die Stunde als Primegrid betrachtet und so weiter.

* Verwenden Sie auf Multiprozessorsystemen 100 % der Prozessoren.
Wenn Sie einen Quad-Core-Prozessor haben, werden 4 Kerne verwendet, wenn Sie 50% - 2 Kerne einsetzen.

* Verwenden Sie nicht mehr als 100 % des Prozessors- um wie viel Prozent wird BOINC die verfügbaren Kerne gleichmäßig laden.

Diese. Wenn Sie 100 % der verfügbaren Kerne und 100 % des Prozessors einsetzen, arbeiten alle 4 Kerne unseres Quads mit 100 %.
Und wenn Sie 50 % der Kerne zu 80 % auslasten – dann werden in unserem Quad zwei Kerne zu 80 % ausgelastet.


Registerkarte Netzwerkeinstellungen



Gemeinsame Parameter. Das ist Cache-Management.
Wir legen (eher unantastbar :)) die Geschwindigkeit des Herunterladens und Sendens fest.
Ein sehr wichtiger Punkt! Wählen Sie aus, wie viele Tage Aufgaben hochgeladen werden sollen.
Ich habe bei permanenter Verbindung zum Internet den Hauptpuffer auf 1 Tag eingestellt, den Zusatzpuffer auf 1 Tag.
Wenn Sie das Internet regelmäßig haben - dann setzen Sie mehr Tage. Achten Sie einfach auf die Abgabefrist, damit die Aufgaben nicht „überfällig“ sind.

Woher weiß der Manager, wie viele Jobs er herunterladen muss?
Zu Beginn der Arbeit und dann in Abständen von 4-5 Tagen startet der Manager einen Prozessor-Benchmark. Und basierend auf den erhaltenen Ergebnissen entscheidet es, wie viele VU-Teile (Arbeitseinheit = Work Unit = VU) in den Cache geladen werden sollen.

* Hochgeladene Dateien nicht prüfen- Ich weiß es selbst nicht, ich werde die Antwort finden - Ich werde diesen Absatz im Artikel aktualisieren.

Verbindungseinstellungen.
Diese beiden Checkboxen sind für periodische Internetverbindungen relevant. Der Manager wird Sie fragen, bevor er versucht, sich mit dem Server zu verbinden, und kann sich auch selbst trennen, nachdem er neue heruntergeladen und bereits gezählte Aufgaben gesendet hat.

Zugang zum Internet.
Hier können Sie den Zeitplan festlegen, nach dem der Manager zum Netzwerk geht (falls erforderlich).

Benötigen Sie ständigen Internetzugang?
Nein! Der Manager benötigt nur Zugriff auf das Netzwerk, um Aufgaben zu senden/empfangen. Theoretisch kann ein Computer also ohne Internet auskommen, solange es im Cache etwas zu beachten gibt.

Registerkarte „Festplatte und Speicher“.





Hier bin ich kein Berater: Welche Zahlen Sie eingeben müssen, liegt bei Ihnen. Ich habe alles auf Standard gelassen. Das ist nur die "Speicherdauer auf Festplatte", die ich von 60 auf 300 Sekunden erhöhen würde. Warum die HDD noch einmal ziehen?

Alles, die Erstkonfiguration des Managers ist abgeschlossen. Fahren wir mit dem Verbinden des Projekts fort.

Mit einem Projekt verbinden

Wählen Sie "Dienst" - "Projekt hinzufügen".


Als nächstes erscheint eine Liste mit Projekten. Es ist im Gegenteil unvollständig - nur die "Reisendsten" sind darin konzentriert. die beliebtesten und vernünftigsten BOINC-Projekte. Wenn das gewünschte Projekt in der Liste ist - gut, wenn nicht - geben Sie einfach die gewünschte Projektadresse in das untere Feld ein und klicken Sie auf Weiter.

Wie finde ich die Adresse des Projekts? Es befindet sich in der "Kopfzeile" des Themas in unserem Forum. Denken Sie daran, dass nicht alle Projekte, über die wir im Forum schreiben, BOINC-Projekte sind.

Nachricht:
Nachricht vom Server: Keine Arbeit gesendet
Der Server gibt derzeit keine Jobs aus. Es ist okay, es gibt Projekte, in denen es ein halbes Jahr keine Aufgaben gibt. Verbinden Sie sich vorerst mit einem anderen Projekt.

Nachricht:
Sie haben für dieses Projekt die falsche URL verwendet
Die korrekte URL ist http://www.cosmologyathome.org/
Das bedeutet, dass sich die Serveradresse geändert hat, seit Sie sich mit dem Projekt verbunden haben. Jetzt müssen Sie sich wieder mit dem Projekt verbinden. Diese. Löschen Sie das Projekt und verbinden Sie sich erneut mit der richtigen Serveradresse. Alles, was oben geschrieben wurde, bezog sich auf den Projektmanager, der auf einem lokalen Computer installiert war. An "lokaler Manager".
Wenn Sie ein Auto haben, dann ist es für Sie einfacher, es zu verwalten. Aber wenn Sie zehn davon haben, dann ist es für Sie einfacher, alle miteinander zu verbinden und sie zentral mit "BAM" - "Boink Account Manager" zu verwalten. Mehr über ihn.

Vollständig den BOINC-Themen gewidmet.

Ich arbeite in der IT-Abteilung und beobachte ständig Computer, die aus verschiedenen organisatorischen Gründen im Leerlauf sind und sich sehr langweilen. Die goldenen Tage des Bitcoin-Minings auf der CPU sind vorbei, und auf der Suche nach einem neuen sinnvollen Geschäft bin ich zum freiwilligen Distributed Computing, insbesondere zum World Community Grid gekommen. Zunächst einmal wurde die Suche nach einem Heilmittel gegen Krebs durch einen Server aus einem Cold-Standby und eine virtuelle Maschine mit niedriger Priorität in einem Virtualisierungscluster verwirrt. Schwieriger ist es bei Workstations, sie kommen und gehen ständig, auf jeder dauert es lange, BOINC zu installieren, zu konfigurieren und dann zu entfernen.

Es wurde beschlossen, ein Live-Distribution-Kit mit BOINC „eingebettet" zusammenzustellen und über das Netzwerk zu verteilen. Schalten Sie den Computer ein, drücken Sie F12, wählen Sie das gewünschte Element aus – und Sie profitieren bereits von der Menschheit!

Als Plattform wurde Debian gewählt, das a) schon lange bekannt ist und b) ein wunderbares Handbuch zum richtigen Thema hat. Trotzdem ging es nicht ohne Rechen, und in diesem Fall bedeutet fast jede neue Rechen eine ziemlich lange Neumontage des Bildes. Ich hoffe, dieser Beitrag spart etwas Verwaltungszeit und erinnert Sie gleichzeitig an die Existenz eines so wunderbaren Projekts wie WCG.

Beachten Sie, dass alles in einer sehr geschlossenen Umgebung durchgeführt wurde und der Sicherheit sehr wenig Beachtung geschenkt wurde. Vielleicht müssen Sie in Ihrem Fall mehr an der Sicherheit arbeiten.

Vorbereitung

Das System besteht aus:
  1. Netzwerk-Boot-Server.
  2. NFS-Server
  3. Montagestation
Ich habe 2 und 3 - ein Auto.

1. Netzwerk-Boot-Server. Bei mir war schon alles fertig, ich hatte das konfigurierte TFTP und DHCP aus dem Thin-Client-Projekt. Wenn Sie keinen haben, können Sie sich ganz einfach einen neuen besorgen. Kurz gesagt, installieren und starten Sie tftpd-hpa und spezifizieren Sie in DHCP die Parameter 66 und 67. Lassen Sie einfach niemanden über das Netzwerk booten (in meinem Fall sind das Kadetten), es kann gefährlich sein. Zusätzlich zum BIOS können Sie einen Teil des Boot-Menüs des TFTP-Servers mit einem Passwort schützen.

2. NFS-Server. Erstens muss BOINC in der Lage sein, seine Daten zu speichern, während es läuft. Es wird davon ausgegangen, dass die lokale Festplatte nicht berührt werden kann, daher erlauben wir über NFS das Schreiben in ein Verzeichnis, zum Beispiel /srv/boinc-nfs . Hier erstellt jeder Computer ein Unterverzeichnis mit einem Namen, der seiner MAC-Adresse entspricht. Zweitens enthält das /srv/debian-live-Verzeichnis das Root-FS für den Netzwerk-Boot. So:
mkdir /srv/debian-live mkdir /srv/boinc-nfs chown niemand:nogroup /srv/boinc-nfs chmod 755 /srv/boinc-nfs
In /etc/exports hinzufügen:
/srv/boinc-nfs *(rw,sync,no_root_squash,no_subtree_check) /srv/debian-live *(ro,async,no_root_squash,no_subtree_check)
Danach starten wir den Dienst neu (aus irgendeinem Grund hat mir das empfohlene exportfs -rv kein Ergebnis geliefert):
/etc/init.d/nfs-kernel-server Neustart
3. Montagestation. Es ist nur eine virtuelle Maschine mit normalem Debian Wheezy. Das Live-Build-Paket wird installiert und erledigt den Großteil der Arbeit. Es muss Internet geben.

Montageprozess

Wir gehen zum Sammelplatz.
mkdir /srv/live-default && cd /srv/live-default
Wir erstellen eine Basiskonfiguration für unsere Distribution, indem wir die Adresse des NFS-Servers angeben:
lb config -b netboot --net-root-path "/srv/debian-live" --net-root-server "192.168.15.20"
Es wird ein Verzeichnisbaum gebildet, in dem verschiedene Inhalte platziert werden. Sie können Ihren Build anpassen. Wir werden Folgendes hinzufügen:
1. config/package-lists/boinc.list – eine Liste von Paketen, die in unserem Build benötigt werden. Wir schreiben dazu:
boinc-client nfs-common
2. config/includes.chroot/etc/init.d/boinc-preps – ein Init-Skript, das NFS mountet, BOINC konfiguriert und den Hostnamen-Detached-Status ändert). In dieses Skript müssen Sie die Adresse Ihres NFS und die Adressen der Hosts einfügen, von denen aus die passwortlose Verwaltung erlaubt ist. Inhalt des Skripts:
#!/bin/bash ### BEGIN INIT INFO # Liefert: boinc-preps # Erforderlicher-Start: nfs-common # Erforderlicher-Stop: # Sollte-Start: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Diverse Sachen für BOINC # Description: Diverse Sachen für BOINC ### END INIT INFO PATH=/sbin:/usr/sbin:/bin:/usr/bin . /lib/init/vars.sh do_start () ( MYMAC=`ifconfig eth0 | grep -o -E "([[:xziffer:]](1,2):)(5)[[:xziffer:]]( 1,2)" | sed s/://g` ancien=`hostname` nouveau=DYNWCG-$MYMAC mkdir -p /mnt/boinc-nfs mount 192.168.15.20:/srv/boinc-nfs /mnt/boinc- nfs && mkdir -p /mnt/boinc-nfs/$MYMAC service boinc stop sed -i "s/^BOINC_DIR=.*/BOINC_DIR=\/mnt\/boinc-nfs\/$MYMAC/;s/^BOINC_USER= .*/BOINC_USER=\"root\"/" /etc/default/boinc-client echo "192.168.10.60" > /mnt/boinc-nfs/$MYMAC/remote_hosts.cfg echo "192.168.10.61" >> /mnt /boinc-nfs/$MYMAC/remote_hosts.cfg echo "" >> /mnt/boinc-nfs/$MYMAC/gui_rpc_auth.cfg für Datei in \ /etc/hostname \ /etc/hosts # Sie können hinzufügen #/etc/ hier ssh/ssh_host_rsa_key.pub \ #/etc/ssh/ssh_host_dsa_key.pub \ # wenn Sie SSH brauchen, tun Sie [ -f $file ] && sed -i.old -e "s:$ancien:$nouveau:g" $file done invoke -rc.d hostname.sh starte invoke-rc.d Netzwerk erzwinge Neuladen des Dienstes boinc start ) case "$1" in start|"") do_start ;; Neustart|Neuladen|Neuladen erzwingen|Status) echo "Fehler: Argument "$1" wird nicht unterstützt" >&2 Exit 3 ;; Stopp) # NOP Ausgang 3 ;; *) echo "Verwendung: ... " >&2 exit 3 ;; esac:
3. config/hooks/boinc-preps-init.chroot – ein Skript mit einem Befehl, das während des Builds ausgeführt wird und boinc-preps aus dem vorherigen Absatz zum automatischen Laden hinzufügt:
#!/bin/sh update-rc.d boinc-preps-Standardwerte
Nachdem wir die erforderlichen Einstellungen hinzugefügt haben, starten wir die Assembly selbst:
lb bauen
Die resultierende Datei binary.netboot.tar ist für uns von Wert. Entpacken Sie es nach /srv:
cd /srv && tar -xvf live-default/binary.netboot.tar
Es wird in /srv/debian-live (das Root-FS für den Netzwerkstart) und /srv/tftpboot (die Dateien für den TFTP-Server) entpackt. In meinem Fall sind die Build-Station und der NFS-Server dieselbe Maschine, daher ist /srv/debian-live bereits vorhanden.
Der Inhalt von tftpboot ist ein fertiges Bootmenü, es muss auf einem TFTP-Server abgelegt werden. Ich habe seine Arbeit nicht überprüft, da ich einen funktionierenden TFTP-Server mit eigenem Menü habe und von hier aus nur einen Teil der Daten benötigte. Zuerst habe ich alle Dateien von tftpboot/live/ auf den TFTP-Server nach images/debian-live/ (relativ zum Stammverzeichnis des TFTP-Servers) kopiert. Zweitens habe ich aus tftpboot/live.cfg den Text ausgeliehen, der einen neuen Menüpunkt hinzufügt, während er ihn in diesen Zustand ändert (Sie müssen hier auch die Adresse Ihres NFS-Servers angeben):
label live-686-pae menu label BOINC-live (686-pae) linux images/debian-live/vmlinuz1 initrd images/debian-live/initrd1.img append boot=live config nosplash root=/dev/nfs nfsroot=192.168.168. 15.20:/srv/debian-live
Jetzt ist alles an seinem Platz.

Wenn Sie nach dem Zusammenbau den Inhalt des Root-FS überprüfen möchten, ist es nicht erforderlich, damit zu booten, Sie können es einfach als Loop-Gerät mounten:
mount -o loop,ro /srv/debian-live/live/filesystem.squashfs /mnt/squash/
Wenn Sie die Distribution mit neuen Optionen neu erstellen müssen, können Sie vorher entweder lb clean --binary oder lb clean ausführen.

Verwendung

  1. Wir schalten den Computer ein und wählen Boot über das Netzwerk (normalerweise drücken Sie dazu einfach F12).
  2. Wählen Sie je nach Boot-Menü entweder den Eintrag „BOINC-live“ oder warten Sie einfach, bis er per Timeout geladen wird.
  3. In die erscheinende Kommandozeile (wenn alles geklappt hat) schreiben wir sudo ifconfig (Passwort muss nicht eingegeben werden) und notieren die IP-Adresse.
  4. Führen Sie auf dem Verwaltungscomputer (einer der von uns in config/includes.chroot/etc/init.d/boinc-preps angegebenen) boinc-manager aus und klicken Sie auf „Erweitert – Computer wechseln“ (diese Schaltfläche ist nur in „Vollansicht“ ). In diesem Fall sollte BOINC keine Passwörter vom Benutzer anfordern.
  5. Nach dem Verbinden erscheint ein Assistent, in dem Sie ein Projekt auswählen müssen (in meinem Fall ist es das World Community Grid) und Ihr Login/Passwort eingeben müssen.
Das war's, in wenigen Minuten erscheinen neue Tasks in den Zuständen "Ready to run" und "Running".
Dieser Vorgang muss nur einmal für jeden Computer (genauer gesagt für jede MAC-Adresse) durchgeführt werden. Auch nach der Rückkehr nach langem Betrieb an einem anderen Ort findet der Computer seine Daten auf dem NFS-Server per MAC-Adresse und arbeitet nach dem Einschalten sofort weiter (nur einige Aufgaben sind bereits überfällig, aber das ist eine Kleinigkeit, es bekommt neue).

Ergebnisse

Was bleibt ungeklärt:
  • Autologin in WCG. Wahrscheinlich können Sie die Projektkonfiguration in das Bild einnähen, sodass Sie überhaupt nichts mit Ihren Händen eingeben, aber in einer angemessenen Zeit hat die Lösung nicht gegoogelt.
  • E-Mail-Benachrichtigungen. Um nicht "sudo ifconfig" einzugeben, können Sie die Adresse des laufenden Computers automatisch an den Admin senden. Ich habe dies jedoch nicht getan, da es sich um Krücken handelt und es besser ist, stattdessen den vorherigen Punkt zu implementieren.
  • Die IP des NFS-Servers ist doppelt aufgeführt, vielleicht kann eine davon entfernt werden.
  • Die MAC-Adresse der eth0-Schnittstelle wird immer verwendet, um ein Computerverzeichnis zu erstellen. Ob das gut ist oder nicht, kann ich nicht genau sagen.

  • Lassen Sie Ihren Computern nicht langweilig werden! Und schreiben Sie Kommentare, ich werde den Artikel gerne beantworten oder ergänzen.

Sie nutzen die BOINC-Plattform, die vor rund zehn Jahren an der University of California in Berkeley entwickelt wurde. Der erste Schritt, um an einem von ihnen teilzunehmen, ist die Installation der BOINC Manager-Software.

Installation und Konfiguration des BOINC-Clients

Nachdem Sie das Client-Programm heruntergeladen und installiert haben, können Sie ein oder mehrere Projekte angeben, denen Sie beitreten möchten. Ab der sechsten Version unterstützt der BOINC-Client flexible Berechnungseinstellungen, mit denen Sie genau angeben können, welchen Teil der Hardwareressourcen eine Person bereit ist, für die Bedürfnisse der Wissenschaft zu opfern. Darüber hinaus können Sie den BOINC Manager so einstellen, dass er automatisch pausiert, wenn Sie einige Programme starten, oder nur zu bestimmten Zeiten rechnet. Berechnungen können jederzeit manuell ganz oder punktuell unterbrochen und genauso einfach wieder aufgenommen werden.

CPU- und GPU-Recheneinstellungen im BOINC-Client

Zusätzlich zu den Optionen der Client-Anwendung selbst werden Einstellungen für jedes Projekt über das Webinterface auf der persönlichen Seite des Teilnehmers bereitgestellt.

BOINC-Projekteinstellungen über das Webinterface

Mit dem eingebauten BOINC-Benchmark können Sie die Rechenleistung eines Computers bewerten. Es wird manchmal auch verwendet, um die tatsächliche Leistung verschiedener Konfigurationen zu vergleichen.

Eingebetteter BOINC-Client-Benchmark

Auswahl von Projekten basierend auf verfügbaren Ressourcen

Bei der Durchführung wissenschaftlicher Berechnungen spielt die Leistung von Fließkomma-FPU-Einheiten eine wichtige Rolle. Die Genauigkeit der Berechnungen kann unterschiedlich sein. Normalerweise sprechen sie von drei in der Praxis implementierten Typen:

  • FP16 (Half Precision) - Halbe Genauigkeit von Gleitkommaberechnungen;
  • FP32 (Single Precision) - Gleitkommaberechnungen mit einfacher Genauigkeit;
  • FP64 (Doppelte Genauigkeit) - Gleitkommaberechnungen mit doppelter Genauigkeit.

Es ist die letzte Art von Berechnungen (FP64 oder Binär64 gemäß dem IEEE 754-Standard), die in BOINC-Berechnungen und anderen wissenschaftlichen Programmen am meisten nachgefragt wird, da Sie mit Werten im Bereich von ≈ 10 -308 arbeiten können bis 10 308 mit einer Genauigkeit von bis zu 15 Stellen (in Dezimaldarstellung) nach dem Komma. Allerdings ist auch der Anteil an Berechnungen mit einfacher Genauigkeit sehr groß und für einzelne Projekte sogar ausreichend.

Moderne Grafikkarten unterstützen Allzweck-Computing-Technologien. Jeder Videochip, der nach 2007 auf den Markt kommt, leistet bei wissenschaftlichen Berechnungen bessere Arbeit als eine ähnlich teure Zentraleinheit einer ähnlichen Generation.

Architektur und Geschwindigkeit von Berechnungen wie FP32 und FP64 einiger Grafikkarten

Dominierte früher nVidia dieses Segment (ua durch die Veröffentlichung von Tesla-Beschleunigern gleicher Architektur), richten sich nun immer mehr Projekte auf AMD (ATI).

Ein Beispiel für die Ausführung von BOINC-Projekten auf einer AMD-Grafikkarte

Es gibt auch Projekte, die die Beschleunigung auf AMD-Grafikkarten unterstützen, aber nicht mit nVidia-Produkten funktionieren.

BOINC-Projekte mit exklusiver Unterstützung für AMD-Grafikkarten

Vermutlich liegt dies daran, dass nVidia-Grafikkarten auf Basis des GK104-Chips bei einer hohen Geschwindigkeit von FP32-Berechnungen einen starken Leistungsabfall bei FP64-Berechnungen aufweisen. Wenn beispielsweise die Radeon HD 6930 Berechnungen mit doppelter Genauigkeit viermal langsamer durchführt als mit einfacher Genauigkeit (480 bzw. 1920 Gigaflops), dann ist die GeForce GTX 680 vierundzwanzig (128 bzw. 3090 Gigaflops).

Wenn "Letzter" nicht "Bester" bedeutet

Der Einsatz modernerer Chips allein bedeutet nicht immer eine Steigerung der Geschwindigkeit. Beispielsweise ist die HD 6850 nicht in der Lage, Berechnungen mit doppelter Genauigkeit durchzuführen, während die HD 5850 FP64-Berechnungen mit bis zu 418 Gigaflops durchführt.

High-End-Grafikkarten haben oft die Leistung eines Multiprozessor-Servers. Beispielsweise enthält eine Grafikkarte mit einem HD 7970-Chip 2048 Kerne kombiniert in 32 Blöcken. Seine theoretische Leistung beträgt 3789 Gigaflops in Single Precision und 947 Gigaflops in Double Precision.

Zum Vergleich: Der Rechenteil des Core-i5-3570K-Prozessors liefert 122 Gigaflops (FP32) und 61 Gigaflops (FP64) im Turbo-Modus, und Intel HD Graphics 4000 liefert eine Steigerung von weiteren 147 Gigaflops (FP32). Der AMD A10-5800K hat eine berechnete Leistung des arithmetischen Teils ebenfalls auf dem Niveau von 122 Gigaflops (FP32) und 61 Gigaflops (FP64), aber der Radeon HD 7660D-Videokern liefert eine vierfache Steigerung - um 614 Gigaflops (FP32).

Nun macht es auf jeden Fall Sinn, solche Projekte zu wählen, die mit Grafikkarten oder zumindest integrierten Grafikkernen berechnet werden können. Zwischen der theoretischen Leistungsgrenze und dem praktisch erreichbaren Ergebnis liegen jedoch oft nicht prozentuale, sondern ein Vielfaches. Es liegt an den Qualifikationen der Programmierer und den Optimierungsgrenzen für jede spezifische Aufgabe.

Zum Beispiel Projektaufträge [E-Mail geschützt] Auf einem Computer mit einem Core-i3 2100 und einer Radeon HD 6850-Grafikkarte werden sie mit einer Geschwindigkeit von 49,5 Gigaflops berechnet und [E-Mail geschützt]- 71,4 Gigaflops bei gleichen Einstellungen. Beide Projekte erklären Unterstützung für die Beschleunigung von Berechnungen durch AMD-Grafikkarten.

Stromkosten

Ein wichtiger Punkt ist die Energieeffizienz verschiedener Systeme. Jetzt sind es 1 bis 20 Gigaflops pro Watt, und dieser Parameter wirkt sich direkt darauf aus, wie Ihre Stromrechnung steigt. Unter Effizienzgesichtspunkten sind nicht nur spezialisierte Beschleuniger- und Serverlösungen attraktiv, sondern auch APUs und individuelle massenproduzierte Videochips. Die interessantesten Chips von AMD sind eher am Anfang der Preisklasse angesiedelt, während die von nVidia meist im oberen Drittel angesiedelt sind.

Die preisgünstige Radeon HD 7770 hat beispielsweise eine Effizienz von 16 Gigaflops pro Watt in FP32-Berechnungen, ihr Einsatz für FP64-Berechnungen ist jedoch ungerechtfertigt – hier zeigt sie ein Ergebnis von nur 1,0 Gigaflops pro Watt. Selbst der 2009 erschienene Chip HD 4750 hatte mit 2,5 Gigaflops pro Watt einen deutlich besseren Wert.

Die GeForce GTX 660Ti gehört zum oberen Ende der mittleren Preisklasse, nutzt Energie aber effizienter: 16,4 Gigaflops pro Watt bei FP32-Berechnungen und 2,1 Gigaflops pro Watt bei Berechnungen mit doppelter Genauigkeit.

Wenn Sie BOINC (theoretisch) im konstanten Verarbeitungsmodus halten und den Computer nicht ausschalten, werden bei einer Leistungsaufnahme von ≈ 200 W weniger als 150 kWh pro Monat zu den Zählerständen hinzugefügt. In einem typischen Nutzungsszenario (wenn BOINC nur im Leerlauf aktiv ist und der Computer mehrere Stunden am Tag läuft und nachts ausgeschaltet ist) weniger als zehn Kilowattstunden.

Vielleicht erscheinen diese kleinen Ausgaben zur Unterstützung der Forschungsteams der weltweit führenden Universitäten vielen gerechtfertigter als die Überweisung von Spenden an dubiose Wohltätigkeitsorganisationen.

Dies ist eine Kurzversion der BOINC-Client-Einstellungen für diejenigen, die nicht gerne viel lesen und sofort "in die Schlacht stürmen". Trotz der Fülle an Optionen und Möglichkeiten von BOINC können Sie in den meisten Fällen alle Standardwerte beibehalten, wirklich wichtige Optionen, die jeder konfigurieren muss, meiner Meinung nach gibt es nur 3, die wir jetzt in nur 4 Schritten konfigurieren werden. Screenshots stammen aus der englischen Version des Clients 6.12.26, die Namen der Optionen sind in englischer Sprache angegeben und in Klammern durch die russische Übersetzung in ihrer aktuellen Version dupliziert (die Übersetzung kann sich von Version zu Version leicht unterscheiden).

1. Standardmäßig arbeitet BOINC Manager im "vereinfachten" Modus, in dem viele notwendige Funktionen nicht verfügbar sind. Wenn Sie dies also noch nicht getan haben, dann wechseln Sie in den „erweiterten“ Modus“ (Erweiterte Ansicht), indem Sie die entsprechende Schaltfläche drücken:


2. Öffnen Sie die BOINC Manager-Einstellungen:
In Programmversionen ab 6.12.xx befinden sie sich im Menüpunkt Tools --> Computing-Einstellungen (Service --> Client-Einstellungen)
In älteren Versionen, insbesondere 6.10.xx, im Punkt Erweitert --> Einstellungen (Erweitert --> Einstellungen)

3. Stellen Sie auf der Registerkarte „Prozessorauslastung“ die folgenden Optionen ein:


"Während die Prozessorauslastung weniger als XX Prozent beträgt" = 0
Diese Option stoppt Berechnungen vollständig, wenn der Prozessor zu mehr als XX% von Benutzerprogrammen (dh anderen Programmen als BOINC selbst, einschließlich der im Hintergrund laufenden Programme) belastet wird. 0 % bedeutet, dass die CPU-Auslastung durch andere Programme ignoriert wird. Es wird empfohlen, genau 0 einzustellen, weil. Berechnungen werden mit der niedrigsten Priorität ausgeführt und stören die Arbeit anderer Programme unter normalen Bedingungen nicht (weil Rechenressourcen dynamisch zu ihren Gunsten durch das Betriebssystem umverteilt werden). Oder Sie können einen eigenen Wert einstellen, z. B. 80-90 % (d. h. die Berechnung nur bei hoher Last pausieren). Der Standardwert (25%) ist nicht gut - Berechnungen werden bei der geringsten Benutzeraktivität angehalten sowie beispielsweise beim Starten eines Antivirenscans im Hintergrund oder bei der parallelen Verwendung [E-Mail geschützt]

Falls Sie nur einen Teil der im Computer verfügbaren Prozessoren/Kerne für BOINC-Berechnungen verwenden möchten, stellen Sie dies in der folgenden Option ein: "Auf Mehrprozessorsystemen verwenden Sie höchstens XX % der Prozessoren" (In Mehrprozessorsystemen verwenden Sie XX % der Gesamtzahl der Prozessoren) . Der Wert wird in % angegeben, d.h. Um nur 3 Kerne auf einem 4-Kern-Prozessor zu verwenden, stellen Sie ihn auf 75 % ein, 1 Kern auf einem 2-Kern-Prozessor - 50 % usw.
Auf Multi-Core/Multi-Threaded Prozessoren ist diese Methode auch zur Drosselung/Reduzierung der Last (z.B. bei Überhitzung) gegenüber „Use at most XX % CPU time“ vorzuziehen (Use no more than XX % of eachprozessorzeit ), Weil Es sorgt für eine "sanftere" Belastung des Prozessors und spart zusätzlich RAM (indem die Anzahl der parallel laufenden Prozesse / Rechenmodule reduziert wird).
Wenn es alle Kerne nutzen soll, dann belassen wir es einfach beim Standardwert, d.h. 100%.

4. Stellen Sie auf der Registerkarte „Netzwerknutzung“ (Netzwerkeinstellungen) in der Spalte „Zusätzlicher Arbeitspuffer XX Tage“ (Zusätzlicher Puffer XX Tage) die Größe des Job-Cache ein:


Ein großes Angebot an Aufgaben ermöglicht es Ihnen, Ausfallzeiten bei längeren Problemen mit dem Internet oder Ausfällen auf den Projektservern zu vermeiden. Empfohlene Werte sind 2 bis 8 Tage. Je regelmäßiger der Computer arbeitet, desto mehr können Sie in diesem Fall die Größe des Job-Caches festlegen. Regelmäßigkeit meint die Arbeitsweise des Computers, ideale Regelmäßigkeit ist Arbeit im 24/7-Modus (24 Stunden am Tag, 7 Tage die Woche) oder jeden Tag, zum Beispiel genau 10 Stunden. Bürocomputer (etwa 9/5-Modus) können ebenfalls als ziemlich normal angesehen werden. Wenn sich der Computer jedoch sporadisch einschaltet - nicht jeden Tag und die Arbeitsdauer jeden Tag unterschiedlich ist, ist es unerwünscht, einen großen Job-Cache einzurichten, da. Der Kunde macht große Fehler bei der Berechnung der erforderlichen Anzahl von Aufgaben (in Stücken), um den von Ihnen angegebenen Bestand (in Tagen) sicherzustellen, und infolgedessen werden möglicherweise mehr Aufgaben heruntergeladen, als Sie rechtzeitig erledigen können. Ich empfehle nicht, den Punkt "Aufgaben für XX Tage laden" zu verwenden, um die Cache-Größe festzulegen, weil zusätzlich zur Cache-Größe legt es auch die Verbindungshäufigkeit zu den Projektservern fest (im Original heißt dieser Punkt „Verbindung ca. alle XX Tage“) und wenn wir dort einen großen Wert setzen, bekommen wir eine Situation, dass die Der Client wartet mehrere Tage, bevor er die gezählten Aufgaben an den Server sendet und eine Portion frischer Aufgaben erhält.

Wenn Sie an einer detaillierteren Einstellung oder einer Beschreibung einiger Optionen interessiert sind, lesen Sie die vollständige BOINC-Einstellungsoption, die sich hier befindet: (es wird einen Link geben, wenn diese Vollversion fertig ist)