Frage Machine Learning Workstation: AMD v.s. Intel

dExAeJ

Neuling
Mitglied seit
Jul 12, 2020
Beiträge
5
Bewertungspunkte
0
Punkte
1
Anlässlich dieses Tests: https://www.igorslab.de/intel-core-...echen-des-letzten-14-nm-boliden-seiner-art/7/ möchte ich mal nach Eurer Expertise fragen.

Ich möchte meine Workstation upgraden. Diese soll hauptsächlich zum Programmieren in Python (unter Ubuntu) und insbesondere im Bereich Machine Learning mit einschlägen Bibliotheken wie scikit-learn, numpy, pytorch und tensorflow genutzt werden. Verarbeitet werden tabellarische Daten. Auf Basis dieser Daten werden u.a. neuronale Netzwerke trainiert. Meiner Erfahrung nach eignet sich eine CPU für dieses Anwendungsszenartio besser, da die Batch-Size i.d.R. zu klein ist als das eine GPU wesentliche Vorteile bringen würde.

Nun habe ich in den vergangenen Tagen viel recherchiert und all mögliche Benchmarks gefunden in welchen AMD trotz Verwendung von openBLAS oder des MKL "Fixes" mal relativ nahe und mal relativ weit von der Performance eines Intel Prozessors entfernt ist.

Von daher möchte ich Fragen welche Pakte in eurem Test alles zum Einsatz kamen und zu welcher Plattform ihr mir raten würdet: 2066 oder Threadripper?
 
2066 ist fast tot, da würde ich nicht mehr investieren^, es sei denn, Du bekommst alles sehr günstig. Boards für TR40 sind leider aktuiell auch arg knapp. Wie viel willst Du überhaupt investieren?
 
Wie viel willst Du überhaupt investieren?

Ja es scheint mir eine Zwickmühle zu sein. 2066 ist fast EOL und die Prozessoren sind gegenüber dem 3950X oder gar Threadripper quasi obsolet, wenn man mal im Allgemeinen die Leistung betrachtet. Abschrecken tut mich eben die Verwendung von MKL in einer Vielzahl an Bibliotheken die ich regelmäßig nutze, d.h. pandas, scikit, pytorch, tensorflow, matplotlib. Numpy scheint ja ab 1.18 auf openBLAS zu setzen..

Da das System auf 5 Jahre+ ausgelegt sein sollte (Board + CPU) würde ich grob 1000 bis 1500€ ansetzen. Sehr interessant fände ich den 3955WX: https://wccftech.com/amd-ryzen-threadripper-3995wx-pro-cpu-spotted-8-channel-memory-wrx80-platform/ wobei sich da ebe nauch die o.g. Problematik stellt. Ein 2066 Nachfolger ist ja aber auch nicht in Sicht..
 
GPUs in dem Bereich gibts derzeit mit bis zu 48 GB via NV Link mehr, allerdings wird’s da deutlich teuerer als von dir veranschlagt ne 24 gb Titan könnte aber evtl eine Option sein .

schau evtl auch mal bei STH die haben von dir angesprochen Benches mit drin z.B.
 
Wenn unterstützt schlagen die jedenfalls jede CPU um Welten...
 
Der zur Zeit günstigste Threadripper für den sTRX4 kostet nur wenig unter 1400.- und Boards gehen bei über 400.- los, die Verfügbarkeit mal in beiden Fällen ignoriert. Und Pro-CPUs mit dann wieder neuen Boards dürften noch teurer werden. Und du brauchst noch Arbeitsspeicher.
 
Wenn unterstützt schlagen die jedenfalls jede CPU um Welten...

[...] Ne 24 gb Titan könnte aber evtl eine Option sein .
schau evtl auch mal bei STH die haben von dir angesprochen Benches mit drin

Ja da habt Ihr Recht. GPU Training sollte ich mir auf jeden Fall noch mal anschauen. Bisher hatte ich mal mit meiner VEGA 64 ein paar Versuche gestartet, welche aber nicht davon profitierten. Das wird mit zukünftigen Projekten bzw. mit der korrekten Verwendung von entsprechenden Implementierungen (CuDNNLSTM) vermutlich anders aussehen: https://stackoverflow.com/questions...ifference-between-cudnnlstm-and-lstm-in-keras
Preislich fällt aber eine Titan raus, ich wäre eher bei einer 2080 (Ti) angesiedelt, welche ja ähnlich viel Performance hat. Um den Speicher mache ich mir da eher weniger Sorgen, da ich nur mit tabellarischen Daten arbeite, welche die 11GB nicht ausreizen sollten. Vielleicht bringt die 3080 (Ti) ja auch noch mehr. Die Karten sollen ja jetzt auch bald kommen? ECC haben ja die Titan und die RTX Karten beide nicht oder übersehe ich da noch etwas?

Der zur Zeit günstigste Threadripper für den sTRX4 kostet nur wenig unter 1400.- und Boards gehen bei über 400.- los, [...]. Und Pro-CPUs mit dann wieder neuen Boards dürften noch teurer werden. Und du brauchst noch Arbeitsspeicher.

Ein 3960X + vernüftiges Board sprengt das Budget in der Tat. Ich hatte gehofft das ein 3945/55WX etwas günstiger daher kommen. Die Plattform würde den Vorteil bieten das ich später noch erweitern kann. Mein Plan war ja urspürunglich einen 4900X + B550 zu nehmen, also 12/24 Threads, weshalb ein 3960X eigentlich auch schon zu viel ist. Mich beschäftigt dieses MKL-Zeug sehr und 4900X + B550 ist beim Kauf eigentlich auch EOL.

Um Arbeitsspeicher mache ich mir keine Sorgen 😅 Ich habe hier 4x4, 2x16 und ein zweites 2x16GB-Kit rumliegen. Wenn es eine Quad-Channel Plattform wird, verkaufe ich die einfach und hole mir ein 4x 16GB Kit.

Ich ahne aber das es am sinnvollsten wäre auf 4900X + B550 + 2080(Ti) zu setzen was P/L angeht.
 
Soll das Alles ne rein private Sache werden ?
wenn nicht dann:
Hast du die Möglichkeit evtl. Bei ner Uni/Institut/Firma Rechen Kapazität zu bekommen ?
 
Aso, Speicher ist da. Besser ist das :)
Relativ günstige Threadripper 2xxx sind aus der Verlosung raus?
 
Soll das Alles ne rein private Sache werden ?

Überwiegend privat. Auf dem Uni/Instituts-Rechner "mal laufen lassen" ist sicherlich drin (insbesondere um flippende Bits letztendlich ausschließen zu können) aber für das bauen/ probieren entsprechender Modelle wird es wohl auf mich zurückfallen.
Wäre aber bei 4900X + B550 + 2080(Ti) kein Problem, da ich privat (spielen, encoding) auch mehr Leistung brauche als ich jetzt zur Verfügung habe (5820k + X99 Deluxe + 16GB RAM)

Relativ günstige Threadripper 2xxx sind aus der Verlosung raus?

Die habe mich aufgrund ihrer noch relativ geringen Leistung im Vergleich zum 3900X/3950X nicht so gut überzeugen können: https://cpu.userbenchmark.com/Compare/AMD-Ryzen-TR-2920X-vs-AMD-Ryzen-9-3900X/m625966vs4044
 
Zuletzt bearbeitet :
Sicher, aber mit den maximal 1500.- ist so ne Kombi zu stemmen. 2970WX für 880.-, das dir taugende Board dazu und du bist noch im Budgetrahmen.
 
Ohne zu wissen, was die von Dir eingesetzten Frameworks GENAU unterstützen und brauchen, ist das alles müßig. Ich wiederhole daher nochmal: mach’ Dich schlau was das angeht und selbst das grds. mit CUDA & Co. fluppt, schau genau nach, ob a) evtl. auch die Tensor Cores einer Ti genutzt werden können und b) nicht eine der Limitierung bei der Ti ggü. den Quadros bzw. Teslas Dir nicht doch noch auf der Zielgerade die Suppe versalzt. Gerade bei der privaten Anschaffung wäre es doch sehr blöd, das Falsche zu kaufen.

Ansonsten kenne ich einige, die sowohl für Training wie auch Anwendung der Modelle zu den dicken Threadrippern gegriffen haben.
 
Sicher, aber mit den maximal 1500.- ist so ne Kombi zu stemmen. 2970WX für 880.-, das dir taugende Board dazu und du bist noch im Budgetrahmen.

Richtig aber da kann ich auch zu X299 und 9980XE greifen. Beides faktisch EOL und preislich vergleichbar.
Ein (optimierter!) 3900X ist halt bei diesem Bench: https://www.pugetsystems.com/labs/h...on-2175W-Python-numpy---MKL-vs-OpenBLAS-1560/ gerade einmal 8/4 Sekunden (Win10/Ubuntu 18) schneller als mein 5820k. Unter Ubuntu und mit OpenBLAS braucht der 5820k allerdings 53 Sekunden. Da zieht der Xeon-W 2175 von 2017 meilenweit davon.

Ohne zu wissen, was die von Dir eingesetzten Frameworks GENAU unterstützen und brauchen, ist das alles müßig.

Das was ich regelmäßig brauche nutzt in erster Linie MKL, wenn man es auf der CPU ausführt: pytorch, tensorflow, scikit-learn, pandas; numpy nutzt nun standardmäßig openblas
Mit CUDA lassen sich pytorch, tensorflow beschleunigen und können von den Tensorcores profitieren: https://towardsdatascience.com/rtx-...-rtx-vs-most-expensive-gtx-card-cd47cd9931d2; https://www.pugetsystems.com/labs/h...2070-GTX-1660Ti-1070-1080Ti-and-Titan-V-1386/

Ob etwas gegen die RTX Reihe spricht muss ich noch rausfinden. Ich weiß aber das viele zur RTX greifen, weil diese erheblich günstiger sind. Seitens Nvidia gibt es da sogar ein Verbot: https://www.pcgameshardware.de/Nvid...-von-Geforce-Karten-in-Rechenzentren-1246672/

Btw: Vielen Dank an alle für die Ratschläge!
 
Zuletzt bearbeitet :
Bei Desktop / Prosumer CPUs bin ich leider raus. Aus dem Server Bereich kann ich dir aber zumindest sagen, dass Intel vorallem bei den Cascade Lake Refresh CPUs auch einige Erweiterungen für genau diesen Bereich implementiert hat. Lohnt sich ggf., dort auch noch einmal einen Blick drauf zu werfen bei der Entscheidung:
 
Überwiegend privat. Auf dem Uni/Instituts-Rechner "mal laufen lassen" ist sicherlich drin (insbesondere um flippende Bits letztendlich ausschließen zu können) aber für das bauen/ probieren entsprechender Modelle wird es wohl auf mich zurückfallen.
Wäre aber bei 4900X + B550 + 2080(Ti) kein Problem, da ich privat (spielen, encoding) auch mehr Leistung brauche als ich jetzt zur Verfügung habe (5820k + X99 Deluxe + 16GB RAM)



Die habe mich aufgrund ihrer noch relativ geringen Leistung im Vergleich zum 3900X/3950X nicht so gut überzeugen können: https://cpu.userbenchmark.com/Compare/AMD-Ryzen-TR-2920X-vs-AMD-Ryzen-9-3900X/m625966vs4044

Um evtl. noch eine kostengünstigere Version in den Raum zu werfen :
14C Xeons die auf deinem Board laufen wie den e5-2697V3 gibts für ca. 300€ gebraucht als ES ,der 18 Kerner 2699v3 geht bei knapp über 400€ los.
 
Oben Unten