Frage PC für AI Studium

Bertl96

Veteran
Mitglied seit
Jul 22, 2018
Beiträge
157
Bewertungspunkte
29
Punkte
28
Meine Schwester benötigt für ihr AI Studium einen Rechner, der besser ist als ihr Surface 4. Es sollen darauf jetzt nicht riesige neuronale Netzte oder so trainiert werden, dafür gibts Rechner an der Uni, oder Google Colab mit GPU Unterstützung etc. Aber kleine Hausübungsaufgaben laufen am Surface teilweise eine halbe Stunde bis zu einer Stunde, das Surface ist ja insbesondere thermisch schon stark limitiert. Ein größerer leistungsstärkerer Laptop wäre schon ausreichend was die Leistung betrifft, nur damit ihr so eine ungefähre Vorstellung habt. Wie man das von Studenten so kennt ist das Budget eher knapp, also so 500-550€ wäre optimal, ein bisschen mehr falls nötig.

Anwendungen:
Betriebssystem: Linux (Ubuntu)
Jupyter Backend (auch über SSH Tunnel von außen verfügbar)
Python mit Libraries Pytorch/Tensorflow
Surfen, Videos streamen, alltägliche Nutzung

Solange auf der CPU gearbeitet wird ist für die meisten Machine Learning Sachen die Kernzahl nicht so relevant, da die Sachen oft Singlecore effizienter laufen.

Der Plan wäre eine GPU nachzurüsten, falls irgendwann mal größere neuronale Netze trainiert werden sollen, das muss aber nicht zwingend sein. GPU ist dann auch maximal Mittelklasse, also sicher unter 500€. Was sie also jetzt braucht ist eine solide Basis, zu der man später eine Grafikkarte dazustecken kann. Das Problem daran ist, dass die meisten Ryzen Prozessoren keine integrierte Grafik haben, aber eine GPU derzeit nicht benötigt wird (und vielleicht später auch nicht). Intel hat aber insgesamt das schlechtere Preis-Leistungs-Verhältnis.

Folgende Komponenten sind mehr oder weniger fix (Preise für Österreich):
16 Gb RAM (~80€), wahrscheinlich Crucial Ballistix 3600
1Tb Sandisk (80€ Mediamarkt Black Friday Angebot)
Seasonic Focus GX 550 Watt (~80€, ausreichend mit Grafikkarte? Oder auf Nummer sicher gehen und 650 Watt nehmen, falls doch eine RTX 3070 reinkommt)
Gehäuße (~60€, was auch immer ihr gefällt)
Summe: 300€

Bleiben 250€ für Board und Prozessor und

Die große Frage ist jetzt Intel oder AMD, obwohl die Antwort zurzeit eigentlich fast immer AMD ist.

Ich hätte noch eine alte Radeon HD 8350 zuhause liegen. Haltet ihr es für eine Option diese mit einem Ryzen 2600(X) oder 3600 zu kombinieren, läuft das unter Ubuntu? Die Karte muss ja nur ein Bild liefern, mehr nicht. Gibt es sonst eine günstige Grafikkarte die dafür passt, vielleicht eine Nvidia 1030?

Die andere Option mit AMD ist ein Ryzen 3400G, das ist neben dem 2600 mit der alten GPU die günstigste Option, hat aber schon deutlich weniger CPU Leistung.

AMD:
MSI B450 Tomahawk Max (77€, Black Friday Angebot)
Ryzen 2600X 135€
Ryzen 3600 220€
Ryzen 3400G 155€
(Nvidia GT 1030 70€)

Auf der Intel Seite gibts den 10400 der ins Budget passt, der hat eine iGPU, dafür läuft der RAM nur mit 2666.
MSI B460 Torpedo (100€)
Intel 10400 (165€)
RAM -20€, weil nur 2666

Preise sind von den Händlern die nach Österreich liefern und bei denen ich bestellen würde (seriös und nicht zu viele Unterschiedliche zwecks Versandkosten (und wegen der Umwelt und den armen Schweinen die das Zeug liefern) ), daher sind die Preise mit denen ich gerechnet habe teilweise etwas höher als die geizhals.at Preise.

Würde mich über Meinungen insbesondere zu der Intel vs AMD Thematik freuen, fallen euch noch andere Optionen ein, die ich vielleicht übersehen habe. Ich weiß, dass man bei Board, RAM usw. noch ein paar Euro sparen könnte, da ist aber Qualität wichtiger. Gibts irgendwo Probleme mit Linux, die wir beachten sollten?

Danke fürs Lesen meines Monster Textes, ich hoffe es stehen alle relevanten Infos drinnen, sonst einfach nachfragen.
 
Mal eine Gegenfrage.... ich habe keine Ahnung ob deine Anforderungen besonders gut auf mehr Kernen skaliert oder ob eine besonders hohe IPC gefragt ist. Das wäre interessant zu wissen bei der CPU Auswahl. Denn wenn dein Vorhaben gut mit mehr Kernen arbeitet (wovon ich eigentlich ausgehe), fällt der Ryzen 3400G schon mal ganz raus.

Wenn man nicht viel Geld ausgeben möchte, wäre meine persönliche erste Wahl ganz klar eine neue CPU die ich in den Raum werfe, der Ryzen 7 2700X für aktuell 175€ bei Mindfactory (8C/16T, 3.70-4.30GHz). 2 Kerne mehr als der 3600, kaum geringere IPC Leistung und noch günstiger.

Der Intel wäre für mich in diesem Vergleich keine Option, weil er einfach bei Multicore langsamer ist. Wenn es dir um reine Singlecoreleistung geht, dann wäre der G3400 wieder an erster Stelle.
 
Die Sachen die gut auf viele Keren skalieren werden üblichweise mit GPUs gerechnet. Die meisten Sachen, die im Studium selbst programmiert werden sind auch Singlecore. Also die Kernzahl ist eher zweitrangig, daher denke ich nicht, dass der 2700x sinnvoll ist, außerdem liefert Mindfactory nicht mehr nach Österreich.

Meien überlegung zum Intel war, das dieser sowohl im Singlecore als auch im Multicore schneller ist als der Ryzen 3400G.
 
Die HD 8350 macht natürlich immer noch ein Bild. Wenn es nur darum geht ohne interne Grafik auszukommen, ist das eine Möglichkeit.

Mit einem brauchbaren Mainboard kann man den RAM bei Intel auch problemlos höher takten als die 2666 MHz die bei der CPU angegeben sind. Einfach im BIOS das XMP-Profil laden und es läuft. Man könnte also auch 3200er nehmen, der nicht viel mehr kostet. Mit den B-Chipsätzen geht das aber soweit ich weiss nicht viel.
 
Also wenn du eher etwas "ausgeglichenes" suchst, ja, dann wäre ich mit dem Intel bei dir. Der 3600 ist ein bisschen teuer im Vergleich und bei den Anforderungen und der G3400 wäre in meinen Augen niemals eine echte Option da ich aktuell in keinem Fall einen 4 Kerner mehr kaufen würde, egal aus welchem Lager.
 
Um den RAM mit Intel höher zu takten brauchts ein Z Board, daher keine Option.
Wenn die HD 8350 eine iGPU zweckmäßig ersetzen kann, dann wird es wohl ein AMD werden.

Das vier Kerne eigentlich keine Option mehr sind, auch wenn es hauptsächlich um Singlecore Leistung geht, habe ich mir auch gedacht. Nachdem sich das Problem mit der iGPU wohl erledigt hat, wird es wohl bei AMD bleiben. Deswegen ist mein Blick jetzt auf den 3500X gefallen, um 150€ ist das ein echter 2nd Gen Ryzen und auf SMT kann man auch verzichten.
 
Ich würd einfach mal den/einen Prof fragen, was er empfiehlt. Da wird ja hoffentlich einer sagen können, was für die Übungen & Co. sinnvoll und bezahlbar sein wird.
 
Ich kenne mich damit nicht aus, aber würde vielleicht ertmal ein NVIDIA Jetson Nano Developer Kit reichen? Nur für die AI Sachen.

 
Autsch. Da ist aber nichts halbwegs Zukunftstauglich.
Es geht auch nicht um Zukunftstauglichkeit, sondern um AI-Hausaufgaben zu machen, auf diesen primären Zweck hin habe ich das System zusammengestellt. Und man könnte den Rechner auch aufrüsten, wenn wieder frisches Budget da ist, eine weitere SSD und ein 3600 wären kein Problem.

Da kannst du froh sein, wenn die Grafikkarte an dem Netzteil überhaupt läuft.
Das stimmt nicht. Die 2060 säuft lt. Igor maximal 265W, da bleiben dann noch 135W für den Rest. Aber wer meint, das würde mit Hinblick auf eine mögliche Aufrüstung nicht reichen, nimmt halt für ein paar Euro mehr ein 500W Netzteil: https://geizhals.de/be-quiet-system-power-9-500w-atx-2-4-bn246-a1765553.html?hloc=de
 
Bei einem Dual-Rail-Netzteil musst du auch immer auf die Verteilung der 12 V-Stromschienen achten. Beim verlinkten 400W-Netzteil versorgt die 2. Schiene nur den Prozessor und die erste mit 22 A x 12 V = 264 Watt versorgt das Mainboard, RAM, SSD, Laufwerke, Lüfter, USB-Geräte und die Grafikkarte. Sobald die Grafikkarte aufdreht geht der Ofen aus.
 
Du hast mich auf eine heisse Spur gebracht. Ich möchte es immer genau wissen, vor ich jemandem Ratschläge gebe. Darum habe ich mich mal auf der Webseite von Tensorflow umgeschaut:
Es werden also Grafikkarten mit Cuda Arcitektur ab Compute Capability Version 3.5 unterstützt. Das sind Grafikkarten von Nvidia ungefähr ab der GTX 780:
AMD-Grafikkarten haben kein CUDA und werden darum nicht unterstützt.

Die RT-Cores auf den RTX-Grafikkarten haben Kerne verbaut, die genau für solche Anwendungen optimal sind. Darauf wird es also bedeutend besser laufen als auf den GTX-Karten. Ich denke, es ist ähnlich wie bei den Raytracing-Games. Man kann diese auch mit den neueren GTX-Grafikkarten laufen lassen. Aber weil sie keine RT-Kerne haben und die Berechnungen auf den herkömmlichen Kernen ausführen müssen, läuft es auf den GTX-Karten nicht befriedigend.

Wenn man in den PC eine Grafikkarte für Tensorflow einbaut, würde ich auch die RTX 2060 (ab 300.-) wählen. Es ist die günstigste Karte mit RT-Cores und dürfte darum ein Mehrfaches schneller sein als andere schlaue Karten wie beispielsweise eine GTX 1650 Super (ab 160.-) oder GTX 1660 Super (ab 220.-).

Da die RT-Core richtig genutzt werden, denke ich, dass die 2060 ihre volle Leistung ausspielen kann und man auch mit dem vollen Stromverbrauch rechnen muss.

Ich verstehe schon, dass du bei dem engen Budget möglichst günstige Komponenten vorgeschlagen hast. Ich weiss momentan nicht recht, was ich für den Preis vorschlagen würde. Auf jeden Fall würde ich sagen, dass es sich wirklich lohnt, mehr zu investieren, denn man bekommt gerade in der Preisklasse auch wirklich mehr Wert wenn man etwas mehr Geld in die Hand nimmt. Nicht vergessen, wer billig kauft kauft 2 mal.
 
Wegen Tensorflow ("Python mit Libraries Pytorch/Tensorflow") hatte ich die 2060 ja überhaupt erst vorgeschlagen, sonst würde das System in der Kombination keinen Sinn machen. Den Stromverbrauch unter Tensorflow habe ich ein posting vorher verlinkt und das 500W Netzteil kostet auch nur ein paar Euro mehr. Allerdings sind das alles Preise für Deutschland, ob das in Ö auch so klappt, weiß ich nicht.

Mal etwas zu den Kaufberatungen allgemein: ich empfehle nur Sachen, die ich für den Einsatzzweck selber auch einsetzen würde. Natürlich wurde hier an allen Ecken und Enden gespart, um das Budget zu halten und um die beste Leistung aus dem Geld rauszuholen. Man könnte auch versuchen, eine günstigere gebrauchte 2060 zu ergattern, die Ersparnis könnte man dann in die restliche Hardware stecken.
 
Wichtig bei der CPU ist auch, welche Befehlssätze hier, je nach Framework und Anwendung, gefordert werden oder sich ggf. massiv auf die Performance auswirken.

Daran würde ich fest machen, ob Intel oder AMD CPU.
 
In meinem Eingangspost schrieb ich, dass eine GPU (noch) nicht benötigt wird, aber eine gute Basis auf die man aufbauen kann und die lange hält wichtig wäre. Der Vorschlag von Herr Rossi ist also nicht wonach ich suche. Wenn aber später eine Grafikkarte dazukommt soll die auf jeden Fall Tensorcores haben, sprich RTX.

Zurzeit gehts aber noch darum selber neuronale Netze zu programmieren, dabei spielt insbesondere Numpy eine große Rolle. Da gab es ein Problem, dass mit Ryzen AVX2 nicht verwendet wird, obwohl die Prozessoren es könnten. Besteht das Problem noch immer? Es gibt zumindest einen Workaround, weiß aber nicht ob das für Ubuntu auch gilt. Mit Intel hätte man diese Probleme jedenfalls nicht.

Es geht hauptsächlich darum, dass das Surface gerne Mal eine halbe Stunde an sowas rechnet und dadurch ausgelastet ist, man kann nebenbei nicht mehr gut darauf arbeiten. Deshalb soll ein Desktop her, der das einfach im Hintergrund laufen hat und dabei dann noch deutlich schneller ist.
 
Ich würde genau daher zum Beispiel eine dieser Intel CPUs mit einem guten Z470 Mainboard und 2x16GB RAM (oder direkt 2X32GB wenn du es schon absehen kannst) nehmen. Je größer die CPU, je schneller
kannst du rechnen, zB Numpy skaliert durchaus mit mehr Threads. Intel hat im ML Bereich aus meiner Erfahrung durchaus noch Performance Vorteile durch die Befehlssätze. Auch viele Phyton Libs profitieren zB von der Optimierung auf Intel.




Beim Netzteil und Gehäuse jetzt schon drauf achten, dass du später GPU-technisch aufrüsten kannst.
 
Leider weit außerhalb des Budgets. CPU+Board 250€

Es handelt sich jetzt auch um nicht so große Aufgaben, dass mehr als 16Gb RAM notwendig wären (nicht mal 16), oder dass numpy richtig zu parallelisieren beginnt. Die ML Algorithmen arbeiten iterativ, wenn das NN nicht so groß ist, dann ist eine einzelne numpy Operation schnell durchgeführt, bevor überhaupt die restlichen CPU Kerne mitkriegen was abgeht.

Hat jemand einen Link für mich wo diese ganze Numpy, Intel vs AMD Bibliotheken, Mkl, openBLAS erklärt wird?
 
Oben Unten