News HWiNFO legt Schummelei in Ryzen Stromversorgung offen

User-News

Von E555user

Hinweis: Diese "User-News" wurde nicht von der Planet 3DNow! Redaktion veröffentlicht, sondern vom oben genannten Leser, der persönlich für den hier veröffentlichten Inhalt haftet.
Im Forum von HWiNFO weist The Stilt auf mögliche falsche Messwerte der AM4 Mainboards hin, anhand Hersteller die CPUs ohne Wissen der Endkunden übertakten. Dadurch erschleichen sich die Mainboard-Hersteller bessere Benchmarks in den Reviews. Durch die falschen Messwerte, die durch die Ryzen-CPUs für die dynamische Taktung herangezogen werden, kann eine CPU ausserhalb der von AMD spezifizierten Werte betrieben werden. Der Umstand tritt allerdings nur im Grenzbereich auf, wenn die CPUs die von AMD vorgegebenen Limits dann überschreiten.

Mit HWiNFO lassen sich diese Schummeleien anhand der "Power Reporting Deviation" erkennen, wenn diese vom Sollwert 100% deutlich (+/- 5%) abweicht.

Ich erlaube mir mal den Text von The Stilt ins Deutsche zu übersetzen:

Die Ryzen CPUs der AM4-Plattform sind auf externe, von der Hauptplatine bezogene Telemetrie angewiesen, um ihren Stromverbrauch zu bestimmen. Die Spannungs-, Strom- und Leistungs-Telemetrie wird dem Prozessor durch den VRM-Controller des Motherboards über die AMD SVI2-Schnittstelle zur Verfügung gestellt. Diese Informationen werden vom PowerManagement-CoProzessor der Prozessors genutzt, der dafür verantwortlich ist, die Betriebsparameter der CPU anzupassen und sicherzustellen, dass weder die CPU-SKU noch plattform- oder infrastrukturspezifische Grenzwerte verletzt werden.

Die Schwäche dieser Methode besteht darin, dass die Telemetrie im Wesentlichen eine undefinierte Skala für die Strom- (und damit Leistungs-) Messungen verwendet. Dies bedeutet, dass der VRM-Controller der Hauptplatine eine Ganzzahl zwischen 0 - 255 an die CPU sendet und diese Zahl auf der Grundlage des der Co-Prozessorfirmware bekannten Referenzwertes in einen Wert umgewandelt wird, der einen von der CPU aufgenommenen physikalischen Strom darstellt. Basierend auf dem genau bekannten Stromfluss und der Spannung ist es möglich, die Leistungsaufnahme der CPU in Watt (V*I) zu berechnen.

Der oben erwähnte Referenzwert ist im Allgemeinen für jeden Mainboardhersteller und jedes Mainboard-Modell unterschiedlich, es sei denn, es gibt Platinen mit identischem Layout. Aus diesem Grund liegt es in der Verantwortung des Motherboardherstellers, den richtigen Wert für sein Motherboard-Design mit Hilfe einer Kalibrierung zu finden und ihn dann während der Bios-Compile-Zeit in AGESA korrekt anzugeben. Wenn der korrekte Wert des Motherboard-Designs stark von dem deklarierten Wert abweicht, kommt es zu einer Verzerrung des Stromverbrauchs durch die CPU. Wenn der deklarierte Wert größer als der tatsächliche Wert ist, ist der von der CPU gesehene Stromverbrauch größer als er tatsächlich ist. Gleichermaßen, wenn der angegebene Wert eine Untertreibung wäre... würde die CPU annehmen, dass sie weniger Strom als tatsächlich verbraucht.

Da mindestens zwei der größten Motherboard-Hersteller immer noch darauf beharren, diese Umgehung zu nutzen, um sich einen Vorteil gegenüber ihren Konkurrenten zu verschaffen, obwohl sie ständig darum gebeten bzw. angewiesen werden, es nicht zu tun, dachten wir, es wäre nur fair, wenn die Verbraucher sehen könnten, ob ihre Boards etwas tun was sie nicht tun sollten. Das Problem bei der Verwendung dieses Exploits besteht darin, dass es die Energieverwaltung der CPU durcheinander bringt und möglicherweise auch ihre Lebensdauer verringert, da die CPU außerhalb der Spezifikation betrieben wird, in einigen Fällen um ein Vielfaches. Außerdem kann es Probleme verursachen, wenn dieser Exploit von einem Hardware-Reviewer unentdeckt bleibt, da sowohl die Leistung als auch die softwarebasierten Stromverbrauchszahlen davon betroffen sind.

Wenn wir z.B. eine Ryzen 7 3700X CPU mit 65W TDP und 88W Standard-Leistungsbegrenzung (PPT) nehmen und diese auf einer Platine verwenden, die nur 60% ihres tatsächlichen Telemetrie-Referenzstroms deklariert hat, werden wir mit einer effektiven Leistungsbegrenzung von ~ 147W (88 / 0,6) konfrontiert, obwohl diese mit den Standardeinstellungen läuft (d.h. ohne manuelle Übertaktung oder AMD PBO zu aktivieren). Während die in diesem Beispiel verwendete 3700X SKU normalerweise nicht einmal diese Art von Leistungsaufnahme erreichen kann, bevor sie auf die anderen Begrenzer und Begrenzungen trifft, bleibt die Tatsache bestehen, dass die CPU weit außerhalb der Spezifikation läuft, ohne dass der Benutzer dies überhaupt bemerkt. Diese Ausnutzung kann auch zusätzliche Kosten und Arbeit für den Verbraucher verursachen, der sich über die ungewöhnlich hohen CPU-Temperaturen wundert und mit der Fehlerbehebung beginnt, z.B. indem er zunächst die Kühlung wieder einbaut und in der Regel schließlich einen oder mehrere bessere CPU-Kühler kauft.

HWiNFO zeigt die metrische "Power Reporting Deviation" unter den verbesserten Sensoren der CPUs an. Bei der angezeigten Zahl handelt es sich um einen Prozentsatz, wobei 100,0% die völlig unverzerrte Basislinie darstellt. Wenn der Motherboard-Hersteller sowohl den Referenzwert ordnungsgemäß kalibriert als auch den Referenzwert deklariert hat, sollte der gemeldete Wert unter einem stabilen, nahezu Volllast-Szenario ziemlich nahe bei 100% liegen. Ein Anhaltspunkt für einen Schwellenwert, bei dem die Messwerte verdächtig werden, liegt bei etwa ±5%. Wenn Sie also einen Durchschnittswert sehen, der deutlich unter ~ 95% liegt, liegt höchstwahrscheinlich eine absichtliche Verzerrung vor. Natürlich kann der Wert größer als 100% sein, aber aus den offensichtlichen Gründen ist dies selten der Fall ;)

Wie bereits erwähnt, ist diese Metrik nur während einem relativ stabilen Betrieb unter nahezu Volllast gültig. Das liegt an der typischen Messgenauigkeit der VRM-Controller-Telemetrie, aber auch an der hoch entwickelten und schnellen Energieverwaltung bei Ryzen-CPUs, die nicht nur zu einem extrem niedrigen Leerlauf, sondern auch zu einem extrem schnell wechselnden Stromverbrauch führt. Ein empfohlener Arbeitsaufwand, um eine stabile und reproduzierbare Abweichungsmetrik zu erhalten ist Cinebench R20 NT, wobei die HWiNFO-Abtastrate auf weniger oder gleich 1000ms eingestellt sein muss.

Außerhalb bestimmter MSI-Hauptplatinen ist dieses Biasing (Mess-Ausrichtung) ab sofort nicht mehr vom Endbenutzer steuerbar. Falls es eindeutige Hinweise darauf gibt, dass auf bestimmten Hauptplatinen oder deren Bios-Versionen ein Biasing stattfindet, wenden Sie sich bitte an den Hersteller und bitten Sie ihn, das Telemetrie-Biasing aus dem Bios zu entfernen. Die Verzerrung kann auf verschiedene Weise implementiert werden, sie kann an eine bestimmte Einstellung(en) (bekannt als "Autoregel") im Bios oder in einer bestimmten Bios-Version oder in allen verfügbaren Bios-Versionen festgelegt werden.

Hier ist ein praktisches Beispiel, das auf einem MSI X570 Godlike-Motherboard mit der neuesten 1.93 Beta-Bios-Version aufgezeichnet wurde:
Für diese Bios-Version hat MSI einen Referenzstrom von 280A angegeben, wenn der korrekte Wert, der ein nahezu 100%iges Ergebnis (d.h. keine Abweichung) und auch eine passende Leistungsaufnahme im Vergleich zu anderen Boards (gleiche CPU und Arbeitslast) ergibt, 300A beträgt. Dies bedeutet, dass das Board eine um 7,14% (300/280) höhere Leistungsaufnahme für die CPU zulässt, als in den AMD-Spezifikationen angegeben. Verglichen mit den schlimmsten Abweichungen (von bis zu 50%) ist dies ein geringfügiger Verstoß, so dass MSI immer dann einen Vertrauensvorschuss verdient, wenn es sich um einen absichtlichen oder ehrlichen Fehler handelt.

Mit der richtigen 300A-Einstellung beträgt die durchschnittliche HWiNFO-"CPU Power Reporting Deviation" beim Cinebench R20 NT 99,2%.
Bei dieser Einstellung beträgt die durchschnittliche CPU-Kernfrequenz 4027,4 MHz, der Stromverbrauch der CPU 140,964W (bei 142W Limit) und die CPU-Spitzentemperatur 73°C.
hwinfostil_01.jpg
Bei einer Einstellung von 225A (75% des Ist-Wert) beträgt die durchschnittliche HWiNFO-"Power Reporting Deviation" während des Cinebench R20 NT 75,3%. Bei dieser Einstellung beträgt die durchschnittliche CPU-Kernfrequenz 4103,5MHz, der Stromverbrauch der CPU 125,241W (bei 142W Limit) und die CPU-Spitzentemperatur 80°C.
hwinfostil_02.jpg
Bei einer 150A-Einstellung (50% des Ist-Wert) beträgt die durchschnittliche HWiNFO-"Power Reporting Deviation" bei Cinebench R20 NT 50,2%. Bei dieser Einstellung beträgt die durchschnittliche CPU-Kernfrequenz 4106,6MHz, der Stromverbrauch der CPU 91,553W (bei 142W Limit) und die CPU-Spitzentemperatur 79°C. Diese Einstellung ist bereits durch die maximale Spannung begrenzt, die durch die Silicon Fitness (FIT) erlaubt ist, so dass es so gut wie keine zusätzlichen Leistungsgewinne oder negative Auswirkungen in dieser Hinsicht gab.
hwinfostil_03.jpg
Ich möchte betonen, dass, obwohl dieser Exploit im Wesentlichen durch etwas ermöglicht wird, das AMD in die Spezifikation aufgenommen hat, die Nutzung dieses Exploits nicht von AMD geduldet, geschweige denn gefördert wird.
Stattdessen haben sie vielmehr aktiv Druck auf die Motherboard-Hersteller ausgeübt, die bei der Verwendung dieses Exploits erwischt wurden.

Kurz gesagt: Einige Motherboard-Hersteller geben in AGESA absichtlich einen falschen (zu kleinen) Motherboard-spezifischen Referenzwert an. Da AM4 Ryzen-CPUs zur Bestimmung ihres Stromverbrauchs auf Telemetrie angewiesen sind, die aus dem VRM des Motherboards stammt, hat die Angabe eines falschen Referenzwertes Auswirkungen auf den von der CPU gesehenen Stromverbrauch. Wenn der Motherboard-Hersteller beispielsweise 50% des richtigen Wertes deklarieren würde, würde die CPU annehmen, sie verbrauchte nur halb so viel Strom als es tatsächlich der Fall ist. In diesem Fall würde sich die CPU erlauben, die doppelte Leistung ihrer eingestellten Leistungsgrenzen zu verbrauchen, auch wenn sie auf Stock-Settings bzw. Default läuft. Es erlaubt der CPU aufgrund der effektiv angehobenen Leistungsgrenzen höher zu takten, es lässt die CPU jedoch auch heißer laufen und wirkt sich potenziell negativ auf ihre Lebensdauer aus, so wie es bei Übertaktungen der Fall ist. Der Unterschied im Vergleich zum Übertakten oder zur Verwendung von AMD PBO besteht darin, dass dies vollständig im Verborgenen geschieht und dass es in der Vergangenheit für die meisten Endbenutzer keine Möglichkeit gab, dies zu erkennen oder darauf zu reagieren.
Zur Übersetzung wurde auf dict.leo.org und deepl.com zurückgegriffen.

Diskutiert wird das auch im AM4 Mainboard Talk im Forum.
 
Zuletzt bearbeitet:
Zurück
Oben Unten