Warum genau kann eine CPU mit 64 Kernen nicht doppelt so viel leisten wie eine CPU mit 32 Kerne?
Kann man das schnell erklären?
Exemplarische Milchmädchenrechnung: 280 W auf sTR4 als Limit ergibt unter Vernachlässigung aller weiteren Randbedingungen bis zu 8,75 W pro Kern und dessen Cache-Slice. Beim 64-Kerner auf der gleichen Plattform verbleiben entsprechend nur noch 4,375 W pro Kern und dementsprechend muss die Leistung eines derartigen Kerns geringer sein (also keine lineare Skalierung).
Wie gesagt, eine stark vereinfachende Milchmädchenrechnung, aber ein wesentlicher Faktor. (Zum Vergleich: Auf AM4 mit den 105 W-CPUs errechnen sich in der Art für einen 3900X 8,75 W; die PPT liegt hier bei 142 W, also maximal 11,833 W regulär.)
Darüber hinaus skaliert der IOD nicht linear, ebensowenig nicht die Hauptspeicherbandbreite, und insbesondere nicht die Massenspeicher.
Zusätzlich ein Cinebench R20 MT-Vergleich:
3950X : 570,9 Pkt/Kern
3900X : 591,7 Pkt/Kern
3700X : 607,0 Pkt/Kern
Als Grundlage die allgemein plausiblen, besten Ergebnisse ohne manuelles Tuning herangezogen.
Ein weiteres Problem bei der Betrachtung ist zudem die Vertriebspolitik, denn AMD hat sein Portfolio in der Art aufgesetzt, dass man die höheren Taktraten bei den größeren Modellen findet. Das macht zwar bei Cinebench eher weniger aus, dürfte aber zusätzliche Ungenauigkeiten in die Werte einbringen. Zudem müsste man für eine genauere Betrachtung das schlechtere CCD/IOD-Watt-Verhältnis beim 3700X berücksichtigen, da hier dessen IOD voraussichtlich einen tendenziell höheren Anteil an der Package-Power hat (das genau zu ermitteln dürfte schwer sein, zumal der gleiche IOD mit zwei angeschlossenen CCDs voraussichtlich etwas mehr ziehen wird).
Und wenn man es zunehmend genauer betrachten will (soviel zu "mal kurz"
), dann müsste man auch den testenden Workload genauer untersuchen, denn auch bei so etwas wie dem Cinebench selbst kann man keine vollständig lineare Skalierung voraussetzen. Hier müsste man ab einer gewissen Skalierung ggf. eher mit mehreren Instanzen parallel arbeiten oder aber einen anderen, ggf. noch synthetischeren Benchmark für eine Messung verwenden.
Grob betrachtet macht die
SPEC-Suite etwas Ähnliches mit ihren Speed- und Rate-Werten. Bei den Speed-Werten wird nur eine Instanz prozessiert (was je nach Test durchaus mehrere Threads inkludieren kann) und es wird gemessen wie schnell ein System diesen einen Task (bestehend aus mehreren, nacheinander durchlaufenden Einzeltests) verarbeiten kann.
Dagegen bei den Rate-Werten werden mehrere Instanzen parallel gestartet, d. h. man misst vornehmlich den insgesamt möglichen Durchsatz auf dem System, was insbesondere für Server und HCP-Systeme mit vielen Kernen und einer hohen Speicherbandbreite relevant ist. Die Linearität ist hierbei durchaus erstaunlich (INTrate / FPrate):
o Epyc 7742 [64C]: 344 / 268
o Dual Epyc: 670 / 524 : (195 % / 196 %)
o Platinum 8280 [28C]: 168 / 139
o Quad Platinum: 661 / 548 : (393 % / 394 %)
o Octa Platinum: 1315 / 1113 : (783 % / 801 %)
Nachfolgend der
Versuch einer Hervorhebung der Speicherbandbreitenabhängigkeit in SPEC CPU 2017 rate *):
o Quad Gold 6226: 323 / 329
o Dual Platinum 8268: 304 / 260
Für die Beschleunigung eines einzelnen, spezifischen Tasks gibt es aber Grenzen bzgl. der Parallelisierung und Linearität, wie in nachfolgenden Posts angerissen.
*)
Hier was zu finden, dass man sinnvoll gegenüberstellen kann, ist äußert schwierig. Bei AMD fällt alles weitestgehend raus aufgrund unpassender Konstellationen, daher der obige Vergleich. Xeon Gold 6226, 12 C, 2,7/3,7 GHz und Platinum 8268 24 C, 2,9/3,9 GHz. Die 24-Kerner haben sogar 200 MHz mehr Basistakt, müssen sich aber mit 2x6 Speicherkanälen zufrieden geben, während das Gold 6226-System aus 4x6 Speicherkanälen schöpfen kann.
Mit ein bischen Glück wird man ja in Zukunft auch TR in der Ergebnisliste finden, dann vielleicht auf einer TRX40- und auch auf einer TRX80-Plattform? Aktuell könnte man einen Vergleich versuchen mit einem Epyc 7742 64 C (345 / 267) gegen einen Dual Epyc 7502 32 C (416 / 363). Die 250 MHz mehr Basistakt des 32-Kerners können dessen Vorsprung nicht erklären und das L3-zu-Kern-Verhältnis ist bei beiden CPUs gleich.