AMD EPYC 7V12 in der Planet 3DNow! Community
Das Distributed-Computing-Team gibt es seit 2000 in der Community von Planet 3DNow! Damals machten wir bei SETI@Home Jagd auf das Intel-Team. In diesen 20 Jahren hat sich viel getan. Aus SETI-Classic entstand BOINC und damit zahlreiche weitere Projekte aus Astronomie, Biologie und Mathematik, bei denen sich unser Team einbringen konnte. Nur im dunklen Kämmerlein still vor sich hin rechnen, das war nie unser Ding und so stellt sich Planet 3DNow! Jahr für Jahr auch etlichen Wettkämpfen im Distributed-Computing-Bereich, wo der BOINC-Pentathlon sicherlich das Highlight des Jahres darstellt. Kein Team war in den letzten 11 Jahren seit Bestehen des Wettkampfs erfolgreicher als unser kleiner eingeschworener Haufen.
Allerdings merkte man speziell in diesem Jahr, aber auch schon ein, zwei Jahre davor, dass die anderen Teams in Sachen Hardware aufholen und wir Defizite bei der schieren Rechenleistung hatten. Wer die Community kennt, weiß, dass wir das so nicht auf uns sitzen lassen können. Einige haben bereits ordentlich aufgerüstet und beispielsweise ihre alten Bulldozer-Maschinen gegen Zen-Boliden getauscht. Bereits beim Tausch “8‑Kern-Bulldozer gegen 8‑Kern-Zen” macht die Rechenleistung einen ordentlichen Satz nach vorne. Doch im AMD-Sortiment finden sich ja noch ganz andere Perlen, die in einer völlig anderen Liga spielen.
AMD EPYC 7V12 — Die CPU stellt sich vor
Betrachtet man das offizielle AMD-EPYC-Portfolio, findet man den EPYC 7V12, wie auch andere Custom-Parts (jene mit einem Buchstaben an 2. Stelle), erst einmal überhaupt nicht. Aber in unserer OPN-Liste und einige andere Quellen findet man das Modell. Microsoft verwendet den EPYC 7V12 in seinen Azure Cloud-Servern. Und für Microsoft ist oder besser war diese Custom-CPU auch eigentlich vorgesehen. Wo steht der EPYC 7V12 im Vergleich? An der EPYC-Spitze mit 64 Kernen und 128 Threads steht derzeit der EPYC 7H12 mit 2,60 GHz Basistakt und 3,30 GHz Turbotakt bei 280 W TDP — hierzu gesellen sich die neuen Threadripper WS. Direkt darunter befinden sich die EPYC 7B12 (Google Cloud Server) und EPYC 7V12 jeweils mit 2,45 GHz Basistakt und 3,30 GHz Turbotakt bei nur noch 240 W TDP. Erst darunter folgenden die regulären EPYC 7742 und 7702. Der EPYC 7V12 ist selbstverständlich Dual-Sockel-tauglich.
Bisher werkelte beim Autor dieser Zeilen – ebenfalls bekennender DC-Unterstützer aus Leidenschaft – ein EPYC 7251, nachdem ein EPYC 7742 leider aus Ungeschick bei der Montage sein Leben vorzeitig ausgehaucht hat. Der Wechsel von EPYC 7251 auf EPYC 7V12 gestaltete sich recht einfach: Kühler runter, alte CPU raus, neue CPU rein, WLP drauf, Kühler drauf, fertig (ok etwas länger beim ersten POST warten).
Getestet wurde vom Autor auf
— ASRockRack EPYCD8-2T/R32 mit BIOS 2.60
— AMD EPYC 7V12
— bequiet DARK ROCK PRO 4 TR4 mit 2 Lüftern
— bequiet 620W NT
— 8x16GB DDR4-2933 REG ECC CL22
— ASPEED BMC2500 IGP
— kleine 120GB SSD für Windows Tests
— alte 640GB HDD für Linux Tests
— 2 120er Lüfter (für Spannungswandler und Datenträgerkühlung)
Und nun die üblichen Verdächtigen : AIDA, CPU‑Z & Co.
Aufgrund der Konfiguration des Systems läuft dies bei rund 61°C unter Volllast — aber für den Autor nicht hörbar; die Lüfter drehen dabei mit rund 1000/min, das Gesamtsystem zieht rund 290 W aus der Steckdose.
AMD EPYC 7V12 — Die CPUs kommen zu den Planet 3DNow! Usern
Per Zufall hat der Autor bei einem Großhändler in Übersee diese CPUs gefunden und nach kurzem Überlegen einen bestellt. Intern im Forum wurde spekuliert und überlegt. Die meisten wollten erst einmal abwarten, ob dies auch funktioniert, ob es Probleme mit den Boards oder Zoll gibt oder wo der Haken sei!
Wo gibt es den EPYC 7V12?
Derzeit leider nur im Spezialhandel in USA, aber zwei Team-Mitglieder haben trotzdem welche bekommen.
Was kosten ein EPYC 7V12?
Dies ist derzeit noch Verschlusssache. Es ist jedoch ein sehr guter Preis, der eher im Bereich des hiesigen 32-Kerner lag und nicht eines 64-Kerner.
Wie ging es los mit den EPYC 7V12?
Bestellt wurde die erste CPU am 27.07.2020 und erreichte den Autor in Leipzig am 06.08.2020, nachdem 4 Tage lang nichts passierte (Fehler im System beim Händler) und ein kleiner Exkurs von Leipzig nach Amsterdam und zurück für eine Zollverarbeitung erfolgte. Der P3D-User Thorsam hatte am 28.07.2020 auch welche bestellt. Seine ersten beiden CPUs wurden direkt versandt, gammelten aber ganze 5 Tage in Amsterdam vor sich hin.
Der Reiseweg der CPUs ist aber auch etwas merkwürdig:
— vom Händler nach Los Angeles (DHL-Kreuz)
— von Los Angeles nach Leipzig (DHL-HUB)
— von Leipzig nach Amsterdam für Zollverarbeitung
— von Amsterdam nach Leipzig
— von Leipzig zum Kunden
Aber das ist wohl so gewollt – nicht dass es in und um Leipzig keine Zollämter gäbe oder dass es keine Flüge von Los Angeles nach Amsterdam gäbe! Intern wird derzeit überlegt noch welche zu ordern…
Und wo ist nun der Haken? Es dauert halt etwas, bis die CPUs eintreffen — gern auch mal 14 Tage.
AMD EPYC 7V12 — Die Prozessor-Affinitätsprobleme unter Windows
Der erste EPYC 7V12 traf wider erwarten zuerst beim Autor dieses Artikels statt beim P3D-User Thorsam ein. Und da der Autor ein eingefleischter Windows-User ist, erfolgten auch erste Tests verständlicherweise unter Windows 10 (19042.388). Cinebench und Co. machen mittlerweile keine Probleme, andere Dinge jedoch schon. Bekanntermaßen hat Windows so seine Grenzen. Eine Grenze ist die Prozessoraffinität, d.h. die Zuweisung einer Aufgabe einem Prozessorkern oder –thread mittels 64-Bit Wert. Mit 64 einzelnen Bits können aber auch nur 64 Threads zugewiesen werden und “leider” haben die großen EPYC nun mal 128 Threads.
Bei Intel hatten bisher nur wenige CPUs dieses Problem, etwa Xeon Phi 7235 mit 64 Kernen und 256 Threads. Betroffen sind aber auch diverse Quad- oder Mehrsockelsysteme. Windows selbst kann erst seit NT6.1 d.h. Windows 7 (mit Updates) überhaupt mit so vielen Threads umgehen.
Der Lösungsansatz von Microsoft ist derzeit: Gleichmäßige Aufteilung der Threads in Prozessorgruppen mit maximal 64 Threads, sofern mehr als 64 Threads im System sind. Viele moderne Anwendungen wurden hierfür bereits vorbereitet worden, etwas Cinebench R20.6, Handbrake oder neuerdings auch Blender.
Nur BOINC ist damit weiterhin unter Windows überfordert, da die Entwickler von BOINC dieses Problem noch nicht angegangen sind. Dies führt dazu, dass BOINC bei einem EPYC 7V12 alle Tasks in einer Prozessorgruppe laufen lässt. 128 BOINC-Tasks, die sich auf 64 Threads der CPU tummeln und 64 logische Kerne der CPU unbenutzt lassen. Bekannt und leider immer noch offen ist dieses Problem bei BOINC übrigens seit 2013, als Vier-Sockel-Intel-Systeme erstmals die 64er Grenze durchbrachen.
Bisherige Lösungsansätze:
— per Hand den einzelnen BOINC-Tasks mehreren Prozessorgruppen zuweisen
— SMT deaktivieren
— BOINC innerhalb VMs auf Gastsystem laufen lassen
— oder gleich ein anderes Betriebssystem verwenden.
Letzteres hat sodann auch der Autor machen müssen
AMD EPYC 7V12 – Mit Linux weniger Probleme
Von mehreren Seiten wurde ein Wechsel auf Linux empfohlen. Der Autor setzt daher als Linux-Neuling auf Kubuntu (20.04). Nach Neueinrichtung des Systems läuft nunmehr BOINC unter Kubuntu und knuspert sich fleißig durch die Workunits. Mangels erforderlichem Wissen kann der Autor jedoch keine Tests/Benchmarks unter Linux machen. Die werden nachgeliefert, sobald Thorsam mit seinen EPYCs fertig ist…
AMD EPYC 7V12 – Unter BOINC für P3D
In Anbetracht des schlechten Abschneidens beim diesjährigen Pentathlons – ein nicht wirklich hinnehmbarer Dritter Platz 😉 – ist erhebliches Aufrüsten erforderlich. Als Anhänger von P3D, einer Webseite von und für AMD-User, war es auch klar — es muss fette neue AMD CPU-Power her. Halt etwas “epysches”!
Der AMD EPYC 7V12 ist die zweitgrößte EPYC Ausbaustufe die man derzeit so bekommen kann. Und der Aufpreis vom EPYC 7V12 zum EPYC 7H12 ist einfach viel zu groß. Der Unterschied zum EPYC 7742 spricht dagegen für den EPYC 7V12. Daher kommen somit die EPYC 7V12 zum Einsatz. Mit 64 Kernen und 128 Threads pro CPU kann man seine Rechenleistung schon etwas “ryzen” (sorry für das Wortspiel). Die Ausbeute an CPU-Credits des EPYC 7V12 variiert je nach Projekt, Anwendung, Workunitunterart, Betriebssystem aber nur so viel: Unter Linux bei yoyo@home ECM kommen täglich rund 200.000 bis 260.000 Credits mit einem EPYC 7V12 heraus.
Für den nächsten Pentathlon sind somit wieder einige Überraschungen bei Planet 3DNow! möglich, insbesondere, da wir nun dicke EPYCs aus der im Team seit Jahren legendären “Sofaritze” ziehen können. Auch für andere BOINC-Events dürfte somit bald reichlich frische CPU-Power bereitstehen.
AMD EPYC 7V12 – Ein Upgrade für Das Boot?
Es ist auch sehr verlockend, den Server von Planet 3DNow!, liebevoll “Das Boot” genannt, mit einem EPYC 7V12 zu erneuern. Derzeit arbeitet hier nur ein kleiner EPYC 7351P. Die aktuelle Auslastung liegt laut unserem Admin jedoch in der Regel bei unter 3%. Diese Aufrüstung wäre somit eigentlich nicht notwendig. Es wäre ein totaler Overkill. Aber eben ein Overkill mit Stil!
Machbar wäre es und würde einige Vorteile mit sich bringen:
EPYC 7V12 ggü EPYC 7351P
— Zen 2 statt Zen 1
— 4x so viele CPU-Kerne
— 4x so viele Threads
— 4x so viel L3-Cache
— rund 20% mehr IPC
— etwas mehr Takt
bei gerade mal 40% mehr Stromverbrauch bei Volllast jedoch geringerer Verbrauch bei Teillast.
Folge eines Upgrades: Schaffung eines Forum-Servers mit ausreichend Reserven, um auch hier und da mal ein paar BOINC-Instanzen mitlaufen zu lassen. Allerdings würde “Das Boot” für einige Zeit ins Trockendock müssen, Stabilitätstests usw. und wir hatten gerade erst für über 2 Tage Wartung wegen des Forumupgrades.
Nur gibt es da noch ein Problem für ein mögliches Upgrade: Das verwendete Supermicro-Mainboard im Server leidet, wie viele “alte” EPYC-Boards, unter einem 16MB BIOS-Chip, sodass entweder nur ein Naples oder nur ein Rome AGESA-PI reinpasst. Der Hersteller bietet jedoch derzeit nur die Naples-BIOS hierfür an. Anders als z.B. ASUS, die auch einen Upgradepfad für 16MB BIOS-Chip-Boards bereitstellen.
Aber auch an diesem Problem wird im Forum bereits getüftelt, da es in der Servercommunity gelungen ist, ein Dual-Sockel-Mainboard von Supermicro mit 16MB Chip für Rome startklar zumachen. Dies heißt jedoch (noch) nicht, dass Planet 3DNow! demnächst auf einen 64 Kern / 128 Thread EPYC 7V12 wechselt, sondern nur, dass wir es (wahrscheinlich) könnten wenn wir wollten!
AMD EPYC 7V12 — Fazit
Hat sich der ganze Aufwand und der Stress überhaupt gelohnt? Der Autor kann nur für sich selbst sprechen:
— ich habe nun einige graue Haare mehr
— die Reiseroute kann ich nicht nachvollziehen
— diverse Windows-Anwendungen inkl. BOINC-Kern (boinc.exe) benötigen da noch etwas Optimierung
Pro:
— 64 Kerne / 128 Threads zu unschlagbarem Preis
— liefen auf Anhieb im Board auch wenn diese verständlicherweise nicht in der Supportliste stehen
Kontra:
— die CPUs kommen als Tray vom Händler — hat man also etwas mehr Arbeit, wenn mal etwas nicht geht
Ergebnis: Aber sicher hat sich der Kauf gelohnt, auch wenn es anfangs im Forum noch einige Befürchtungen gab, der Stunt könnte schiefgehen.
Das nächste BOINC-Event kann somit kommen.