Meine 4 Xeon E7 haben eine geringere Leistung als ein einzelner i5 der 8. Generation

Meine 4 Xeon E7 haben eine geringere Leistung als ein einzelner i5 der 8. Generation

Eine offene Frage habe ich noch an euch:

Ich habe in meinem Büro einen gebrauchten Server eingerichtet, um unsere ML-Modelle darauf zu trainieren. Er enthält 4 Xeon E7 4820 (https://ark.intel.com/products/53675/Intel-Xeon-Processor-E7-4820-18M-Cache-2_00-GHz-5_86-GTs-Intel-QPI) – 2,00 GHz, 8 Kerne, jeweils 16 Threads –, 128 GB RAM und 128 GB SWAP (SSD-Swap).

Als ich jedoch meine ersten Testläufe darauf durchführte, war es überraschenderweise unglaublich ... langsam. 11 Minuten zum Trainieren, während das Trainieren auf meiner i5-CPU der 8. Generation (1,6 GHz, 4 Kerne, 8 Threads) mit 8 GB RAM und 8 GB Swap 5 Minuten dauert.

Htop sagt mir, dass Parallel Computing eingeschaltet ist und die CPU-Lastspitzen bei etwa 3 für den i5 und 22 für den 4 E7 liegen. Haben Sie also eine Idee, warum es eine solche Leistungslücke gibt? Ich weiß, dass das Mooresche Gesetz ein unwiderstehliches Phänomen ist, aber dass eine 1 Jahr alte Mittelklasse-CPU 4 sieben Jahre alte Xeon E7 übertrifft, kann ich einfach nicht begreifen. Ich hoffe, Sie können helfen! :)

PS: Ich habe Cuda und CuDNN bereits darauf installiert, aber es funktioniert noch nicht, und ich habe das Lernen nur mit der CPU durchgeführt. Ich war von den Ergebnissen so verblüfft, dass ich die Arbeit an der GPU-Beschleunigung (wir haben eine kleine 1050 Ti, die ich auf dem Server installiert habe) ganz eingestellt habe, um an dem Problem zu arbeiten. Ich habe auch sichergestellt, dass auf beiden Computern genau der gleiche Code ausgeführt wird.

Dank im Voraus ! :)

Frost

Antwort1

Ihr Problem (wie die meisten Probleme des maschinellen Lernens) hängt wahrscheinlich mit der Speicherbandbreite zusammen.

Maschinelles Lernen erfordert nicht besonders viel Rechenleistung, führt viele „einfache“ Berechnungen durch, ist aber durch die Bandbreite zum Speicher stark eingeschränkt. Dies ist einer der Gründe, warum sich Streamprozessoren für Grafikkarten so gut dafür eignen. Jeder Streamprozessor ist relativ eingeschränkt (im Vergleich zu einer CPU), aber bei einfacheren Vorgängen gleicht die enorme Bandbreite und die schiere Anzahl der Prozessoren diese Einschränkungen mehr als aus.

Um einen zufälligeni5 der 8. Generation:

Max Memory Bandwidth    41.6 GB/s

CPU-Bossscheint darauf hinzudeuten, dass die Speicherbandbreite eines E7-4820 der ersten Generation 23 GB/s (23.464 MB/s) beträgt

Ein Multiprozessorcomputer muss ständig Speicher zwischen CPUs kopieren oder auf andere Weise den Speicherzugriff von einer CPU auf eine andere teilen.

Die Kombination aus gemeinsam genutztem Speicher und einer wesentlich geringeren Bandbreite ist wahrscheinlich der Grund, warum das ältere System leidet.

Neuere Xeons versprechen eine Bandbreite von über 85 GB/s.

verwandte Informationen