MLC@Home

thorsam

Grand Admiral Special
Mitglied seit
05.04.2003
Beiträge
2.722
Renomée
888
MLC@Home ist ein verteiltes Computerprojekt zum Verständnis und zur Interpretation komplexer maschineller Lernmodelle mit Schwerpunkt auf neuronalen Netzen.

Opening the Black Box​

Neuronale Netze haben in den letzten zehn Jahren eine Revolution des maschinellen Lernens ausgelöst, die dazu geführt hat, dass Maschinen erstaunlich komplexe Aufgaben erfüllen. Bei diesen Modellen handelt es sich jedoch um große Black Boxes: Wir wissen, dass sie funktionieren, aber sie sind so komplex (bis zu Hunderten von Millionen von Parametern!), dass wir Schwierigkeiten haben, die Grenzen solcher Systeme zu verstehen. Das Verständnis von Netzwerken wird jedoch äußerst wichtig, da Netzwerke in sicherheitskritischen Bereichen wie der Medizin und autonomen Fahrzeugen eingesetzt werden. Modelle müssen auf Robustheit gegenüber gegnerischen Beispielen überprüft werden, Verzerrungen müssen identifiziert und kompensiert werden, und Grenzen für das, was das Netzwerk produzieren wird, müssen identifiziert werden.

MLC@Home bietet eine offene, kollaborative Plattform für Forscher, die das Verständnis von maschinellem Lernen untersuchen. Es ermöglicht uns, Tausende von Netzwerken parallel zu trainieren, mit streng kontrollierten Eingaben, Hyperparametern und Netzwerkstrukturen. Wir nutzen dies, um Einblicke in diese komplexen Modelle zu gewinnen. Das erste Projekt von MLC@Home, der Machine Learning Dataset Generator (MLDS), wird einen großen Datensatz einfacher Netzwerke generieren, die sowohl mit sauberen als auch mit kontroversen Daten trainiert werden. Nach unserer Kenntnis ist dies der erste Datensatz dieser Art. MLC@Home begrüßt auch Projektvorschläge von anderen Forschern, die auf diesen Forschungsbereich ausgerichtet sind. MLC@Home fordert, dass alle von unseren unterstützten Projekten generierten Daten der Öffentlichkeit zugänglich gemacht werden und dass nach Möglichkeit auch alle Papiere und Analysen veröffentlicht werden.

MLC@Home ist ein Projekt des Labors für Kognition, Robotik und Lernen (CORAL) an der Universität von Maryland, Baltimore County (UMBC). Es wurde von John Clemens, einem Doktoranden in CS und Mitglied von CORAL, erstellt. John untersucht Möglichkeiten, Informationen aus neuronalen Netzen zu extrahieren, damit wir deren Verwendung und Einschränkungen besser verstehen können.

Homepage des Projekts: https://www.mlcathome.org/

Projektseite: https://www.mlcathome.org/mlcathome/
 
Bezüglich MLC...
Bildschirmfoto vom 2021-02-09 13-38-27.png
GPU nur Cuda.

Mit der CPU
(Ist Sabroes TR 1950)
Laufzeit CPU-Laufzeit Punkte
31,407.37​
31,110.97​
959.40​

die GPU dazu: RTX 2080 Ti

5,319.48​
5,227.61​
4,160.00​

Mal ganz grob auf die Schnelle gerechnet:
Im Beispiel kommt bei 32 Threads 30.592 Credits gegen oder plus GPU 24.547 Credits in ca. 8,7h zusammen.

Ein V12 könnte also ganz grob 360 k/Tag machen. Plus GPU 73k.

Aktueller Stand FB MLC
Bildschirmfoto vom 2021-02-09 13-55-38.png

BoinStats:
Bildschirmfoto vom 2021-02-09 13-59-03.png
 
Danke für den Hinweis mit der Nvidia-Karte. Ich hatte mir die Anwendungen auch angesehen,
mir war das mit dem CUDA nur nicht klar, weil in der ersten Spalte nur von CPU-Prozessoren die Rede ist.

Also 5,5 x 360k + 4x 73k = 2.272k/d.
 
Die Testanwendung ist auch für AMD GPUs auf Linux, braucht aber ROCm.
 
OK, das habe ich so nicht erkannt/zugeordnet. Davon gibt es welche in homöopathischen Dosierungen. Das bedeutet für die R VII-Jünger?

Anpassung der AMD-Treiber bzw. Pro-Treiber benötigt?
Doppelposting wurde automatisch zusammengeführt:

Danke für den Hinweis mit der Nvidia-Karte. Ich hatte mir die Anwendungen auch angesehen,
mir war das mit dem CUDA nur nicht klar, weil in der ersten Spalte nur von CPU-Prozessoren die Rede ist.

Also 5,5 x 360k + 4x 73k = 2.272k/d.
Es sieht sogar noch besser aus für die V12:

20,593.32​
19,868.03​
959.40​
Also ca. 1/3 weniger Laufzeit = 1/3 mehr Output macht ca. 480 k -> Gesamt ca. 2.925 k/d für Thorsam 8)
 
Zuletzt bearbeitet:
Der MLC Admin hatte auf dem BOINCNetwork Discord nach Testern gesucht, so hatte ich das überhaupt erst mitbekommen. Es braucht zusätzlich zu dem freien amdgpu Treiber wohl nur die AMD ROCm OpenCL Implementierung. Das ROCr OpenCL des 20.45er Treibers für Linux basiert wohl auf ROCm, bringt aber nicht den vollen Stack mit.

GPUs need 2GB ram min.

RX550 is the minimum AMD GPU that will be supported, as I think the RX540 is not POLARIS-based (gfx803 in AMD nomeclature). POLARIS needs an updated client compiled against a later version of rocm (rocm 3.8 has a bug that keeps it from running on POLARIS). It's on the todo list but not ready yet. For now, the only AMD GPUs supported are VEGA-based (gfx900/906/908, not gfx902 APUs) and must be running Linux. Last night I just got pytorch working with rocm4., so that should be easier in the future. There's *some* support for NAVI in rocm, but its untested.

Note AMD APUs are not supported by rocm, and thus aren't supported by pytorch. Yes that's sad.

On the CUDA side, you need 2GB ram and compute capability 3.5 or higher. That's,... most GTX 700 series and up I think?

Die Installation von ROCm ist gut beschrieben und klappt auch, Navi und big Navi sind aber nicht unterstützt, ich hatte das neulich mit einer 6900XT von Thorsam probiert. Polaris und Vega 10/20 sollten klappen, hatte beide auch schon mit einer früheren Version von ROCm parallel bei Einstein betrieben.

Diese murkelige GTX 750 macht laut meinem Skript 50k am Tag:

AMD mit ROCm könnte man mal testen, wo wir da landen.
 
Zuletzt bearbeitet:
Ich habe ROCm nach dieser Anleitung mal installiert. Sollte dabei alles klar gegangen sein.
ABER: seither bricht MW mit Berechnungsfehler ab - siehe die letzten 3 Zeilen. Da ist wohl etwas mit dem AMD-CL-Treiber über Kreuz gegangen *kopfkratz
Code:
Found 1 platform
Platform 0 information:
  Name:       AMD Accelerated Parallel Processing
  Version:    OpenCL 2.0 AMD-APP (3212.0)
  Vendor:     Advanced Micro Devices, Inc.
  Extensions: cl_khr_icd cl_amd_event_callback
  Profile:    FULL_PROFILE
Using device 0 on platform 0
Found 1 CL device
Device 'gfx906' (Advanced Micro Devices, Inc.:0x1002) (CL_DEVICE_TYPE_GPU)
Board: Vega 20 [Radeon VII]
Driver version:      3212.0 (HSA1.1,LC)
Version:             OpenCL 2.0
Compute capability:  0.0
Max compute units:   60
Clock frequency:     1801 Mhz
Global mem size:     17163091968
Local mem size:      65536
Max const buf size:  14588628168
Double extension:    cl_khr_fp64
Error creating command queue (-6): CL_OUT_OF_HOST_MEMORY
Error getting device and context (-6): CL_OUT_OF_HOST_MEMORY
Failed to calculate likelihood
 
Milkyway + ROCm/ROCr oder Clover != hot love

Milkyway geht tatsächlich nur mit dem offiziellen Treiber bis 20.40, 20.45 führt auch zu den gleichen Fehlern.
Hast du von MLC WUs für AMD GPU bekommen?
 
Danke für die Info, habe MW erstmal deaktiviert - war ohnehin nur als "Zusatzheizung" aktiv ;) Das funktioniert auch mit Einstein *buck*

Bisher hat MLC keine Test-WUs rausgerückt.
Sollte ich deswegen noch etwas anpassen:
Code:
Momentan wird der Server nur ROCm WUs an Maschinen ausgeben, die "Radeon RX Vega" in ihrem Host/os id String haben
 
Hmm nee das kannst du nicht selbst anpassen. Der GPU String sieht überhaupt komisch aus bei dir...
Koprozessor AMD Vega 20 [Radeon VII ()[16368MB] 1 () driver: 2.00
 
die GPU dazu: RTX 2080 Ti
5,319.48​
5,227.61​
4,160.00​
Ich vermute da laufen mehr als 1 WU gleichzeitig.
Hab meine GTX1650S (auf 70W begrenzt) mal kurz getestet.
Die braucht 1 Stunde.
Die GPU-Last ist aber nur bei knapp 50% und 45W laut gpuz.
Hab nicht weiter probiert.

Der 4700U auf der Cpu:

18,807.20​
18,775.35​
959.40​
 

At the moment, ROCm support is slower than CUDA, but still faster than CPU.

An den Anwendungen hat sich seitdem nichts getan, die Aussage sollte also nachwievor gelten.
Wer Nvidia hat, kann die hier sicher effektiv einsetzen!
 
Ich habe seit gestern meine beiden Geister 100% auf MLC und Koschis Script drauf losgelassen :

V12 (eff. 217 W PPT) :
Code:
Results fetched:                  1000
Average duration:              21872.9
Average credit:                 959.40
Number of reported cores:          128
Per core per day:                 3741
Per system per day:             478848

3900x Eco-Mode (eff. 87 W PPT):
Code:
Results fetched:                   375
Average duration:              13601.5
Average credit:                 959.40
Number of reported cores:           24
Per core per day:                 6044
Per system per day:             145056

Sieht noch etwas besser aus als vorab geschätzt ;D
 
Zuletzt bearbeitet:
Weil bei LHC das Maximum mit 2 Cluster-Rechernern erreicht ist, werden 2 andere Cluster-Rechner jetzt hier schon eingesetzt. In die 5. und 6. Rechner muß ich noch ein bißchen Gehirnschmalz investieren damit die laufen.
 
Mal ne Frage, hat noch jemand hier Probleme mit MLC@Home unter Linux das er immer nur Berechnungsfehler hat?
 
Es wurde eine ganze Menge abgebrochen durch den Server, ist wohl eine Serie fehlerhafte WUs.

Oder hast Du richtige Berechnungsfehler?
Die weitaus größte Zahl WUs läuft durch.
 
Ne bei mir ist jede mit nem Fehler abgebrochen worden und auch immer nach unterschiedlichen Zeiten ^^
Nun gut dann muss ich das noch mal prüfen, evtl war bzw ist mein RAM OC dafür verantwortlich.
Ich hatte auch bei anderen Projekten auch schon leichte Auffälligkeiten allerdings nur unter Linux, daher war ich erst nicht sicher ob es ein Linux oder ein RAM Problem ist.
Ich hab den RAM aber mal etwas entschäft
 
So Fehler gefunden, es war tatsächlich der RAM ... nachdem ich meinen RAM dann von 14-14-14-14-28 auf 14-15-14-14-28 angepasst habe läuft alles ohne Probleme durch :)
 
Kann es sein das die GPU Anwendung hier so gut wie garkeine Auslastung erzeugt auf der GPU?
Vllt stimmt auch was mit der RTX3080 nicht aber es gibt so gut wie keine Auslastung
 
Ich hatte mal probehalber wieder GPU-WUs zugelassen.
Laut nvida-smi liegt die Auslastung des GPU-Kerns mit 1 WU bei ~ 35%.
Alles klar, also 2 WUs pro Kern laufen lassen.
Auslastung jetzt:
mlc-gpu.png
Ich lasse das wohl besser. :)
 
Zurück
Oben Unten