Änderung der CPU VID durch UEFI möglich?

WindHund

Grand Admiral Special
Mitglied seit
30.01.2008
Beiträge
12.188
Renomée
532
Standort
Im wilden Süden (0711)
  • BOINC Pentathlon 2011
  • BOINC Pentathlon 2012
  • BOINC Pentathlon 2013
  • BOINC Pentathlon 2014
  • BOINC Pentathlon 2016
  • BOINC Pentathlon 2021
@Onkel_Dithmeyer
Also rechtlich gesehen haben die MB Hersteller bei AMD freie Hand und dürfen mache was sie wollen.
AMD gibt zwar die Vorgaben, aber was sie letzlich den VRM zumuten ist ihnen überlassen und das kann AMD auch nicht nachprüfen. (Dazu sind es einfach zu viele unterschiedliche VRMs)
Ich könnte mir gut Vorstellen das sie die max Spannung anlegen, weil die meisten MB eine automatische Übertaktungsfunktion haben.
Im Falle von MSI schreit sich das "OC-Genie".
Im Umkehrschluss bedeutet eine hohe Spannung auch weniger Leckströme. ;)

MfG
 
Zuletzt bearbeitet:
Im Umkehrschluss bedeutet eine hohe Spannung auch weniger Leckströme. ;)

Das ist so nicht richtig.

Die Leckströme richten sich nach der Güte des CPU-Die. Eine hohe VID des Prozessors ist in der Tat besser als eine niedrige VID (zumindest beim FX). Die Standard-VID des CPUs lässt sich aber nicht durch das Mainboard beeinflussen.

Insofern wird eine CPU mit niedriger Standard-VID, aber hohen Leckströmen, durch eine höhere Spannung des Mainboards nur noch mehr verbrauchen. Die Güte des CPU-Dies und die daraus folgenden elektrischen Eigenschaften lassen sich schließlich nicht durch BIOS-Einstellungen verändern.
 
Erzähl das mal dem Bulldozer.
Also die standard Spannung (VID) vom ersten Bios bei meine Board lag bei 1.4125V.
Erst im Nachinein mit einem neuen Bios wurde sie auf 1.2875V gesenkt.
Das Problem beim Zambezi (ganz wichtig, weil Bulldozer schliest die Server CPU´s mit ein) das es keine fixe Spannung mehr gibt.
Die Register geben nur das maximal möglich vor und dann wird je nach Verlustleistung getriggert.
Beim triggern gibt es größere Schaltspitzen die mehr Strom benötigen.

@Music
Und wie die sich ändern läst (VID), das kann ich sogar beweißen! ;)
 
Zuletzt bearbeitet:
Also die standard Spannung (VID) vom ersten Bios bei meine Board lag bei 1.4125V.
Erst im Nachinein mit einem neuen Bios wurde sie auf 1.2875V gesenkt.

Sorry, aber das stimmt doch garnicht.

Die VID ist eine im Prozessor hinterlegte Standardspannung. Die variiert je nach Güte des Die. Je niedriger, desto wahrscheinlicher gibt es hohe Leckströme. Hohe Leckströme sind der Grund, warum die VID niedrig angesetzt werden muss, damit die CPU die TDP-Vorgaben einhält.

Die VID ist außerdem dazu da, um dem Mainboard mitteilen zu können, mit welcher Spannung die CPU letztendlich betrieben werden soll. Die VID wird ausgelesen und als Standard vom Board eingestellt. Wie das Board diese VID letztendlich interpretiert, das obliegt in der Tat dem Mainboard-Hersteller. Wenn deine VID bei 1,2875 Volt liegt, dann ist die dort und kann nicht geändert werden. Sie kann aber dank BIOS-Programmierung in 1,2875 Volt oder in 1,4125 Volt umgesetzt werden. Was letztendlich real rauskommt steht noch auf einem weiteren Blatt.

Es ist übrigens beim FX auch so, dass manche Mainboards bei aktiviertem Turbo die Turbo-VID als VID im BIOS ausgeben. Das vermute ich in deinem Fall übrigens auch.
 
@Music
Bitte via PN, das artet mir sonst zu sehr aus und ich will dich erhlich nicht bloßstellen!
Das was du erwähnst wegen der VID stimmt soweit, aber seit dem FX eben nicht mehr.
 
@Music
Bitte via PN, das artet mir sonst zu sehr aus und ich will dich erhlich nicht bloßstellen!

Meinst du nicht, dass die pure Erwähnung von "bloßstellen" bereits sehr, sagen wir, herablassend wirkt? *noahnung*



Das was du erwähnst wegen der VID stimmt soweit, aber seit dem FX eben nicht mehr.

Ich bin ganz Ohr, denn ich bin nicht unfehlbar und lerne gern dazu. Aber ganz ehrlich: Der Prozessor muss eine Spannungsangabe mitbringen, sonst würde er fehlerhaft angesprochen werden (je nach Ermessen des Mainboard-Herstellers). Und solch eine Angabe aus der CPU lässt sich nunmal nicht verändern. Sie mag "überlagert" werden können, aber nicht geändert. Wenn das gehen würde, könntest du einer CPU, die zum Beispiel 1,25 Volt liefert, mit einem herkömmlichen Desktop-System eine 1,30-Volt-VID verpassen, den Prozessor ausbauen, in ein anderes Mainboard setzen und dort müsste er sofort mit 1,30 Volt erkannt werden. Das will ich gern sehen, denn ich glaube nicht dran. Er wird wieder mit 1,25 Volt erkannt werden.

Ich schätze, dass diese Thematik auch andere User interessiert, weshalb ich das ungern per PM diskutieren will. Eventuell sollte aus unseren Kommentaren ein gesonderter Thread bei den CPUs erstellt werden (was ich mangels Moderationsrechten nicht machen kann). Aber PM kommt nicht in Frage.
 
Meinst du nicht, dass die pure Erwähnung von "bloßstellen" bereits sehr, sagen wir, herablassend wirkt? *noahnung*
Pardon, ich bin halt etwas Streitsüchtig. ;D
Ich schätze, dass diese Thematik auch andere User interessiert, weshalb ich das ungern per PM diskutieren will. Eventuell sollte aus unseren Kommentaren ein gesonderter Thread bei den CPUs erstellt werden (was ich mangels Moderationsrechten nicht machen kann). Aber PM kommt nicht in Frage.
Das wird in meinen Erfahrungsbericht zum MSI 990FXA-GD80 Board einfließen. ;)
 
Schaut doch einfach in den BIOS and Kernel Developer’s Guide (BKDG)...

Bei der Family 10h heißt es:
The VID for VDD is dictated by MSRC001_00[68:64][CpuVid] of the CPU-core in the highest-performance P-state.

Und bei der Familiy 15h:
The VID for VDD is controlled by MSRC001_00[6B:64][CpuVid] of the core in the highest-performance P-state.

Und damit kein Missverständnis beim Bulldozer aufkommt, heißt es dort weiterhin:
Hardware limits the minimum and maximum VID code that is sent to the voltage regulator.
 
Ich bin ganz Ohr, denn ich bin nicht unfehlbar und lerne gern dazu. Aber ganz ehrlich: Der Prozessor muss eine Spannungsangabe mitbringen, sonst würde er fehlerhaft angesprochen werden (je nach Ermessen des Mainboard-Herstellers). Und solch eine Angabe aus der CPU lässt sich nunmal nicht verändern. Sie mag "überlagert" werden können, aber nicht geändert. Wenn das gehen würde, könntest du einer CPU, die zum Beispiel 1,25 Volt liefert, mit einem herkömmlichen Desktop-System eine 1,30-Volt-VID verpassen, den Prozessor ausbauen, in ein anderes Mainboard setzen und dort müsste er sofort mit 1,30 Volt erkannt werden. Das will ich gern sehen, denn ich glaube nicht dran. Er wird wieder mit 1,25 Volt erkannt werden.
Der Prozessor bringt auch eine Spannungsangabe mit, diese kann auch nicht verändert werden im Prozessor.
Jedoch besteht die möglichkeit diese zu überlagern durch das UEFI bzw den µ-code (AGESA Code)

Aber vorne weg, zuerst mal eine kleine Einleitung:
Es gibt scheinbar keine Spannungen (VID) die fix für jedes P-State steht, sondern nur noch eine max. Spannung die durch das jeweilige P-State festgelegt wird.
Beim K10 war es noch so, das die Spannung immer zwischen den P-States gesprungen ist, jetzt wird sie dynamisch der Last angepast, wobei sie sich an der Verlustleistung orientiert.

Jetzt fragt man sich, warum braucht der Zambezi dann soviel Watt aus der Dose?
Nun genau hier kommen die Spannungswandler (VRM) ins Spiel, wenn die Spannung variable agiert entsteht eine höher Schaltleistung vor allem mit zunehmender CPU Frequenz (Takt).

Was bringt es nun wenn der Verbrauchspeak dann doch höher ausfällt?
Beim HPC laufen die Rechner meist 24/7 so das sie immer ausgelastet sind, durch das triggern spart man bei längeren Messungen dann eben doch Strom ein, auch wenn die Peaks höher ausfallen können.
Im Desktop Bereich wird darauf leider nicht so viel Wert auf die kWh Messung gelegt, evt. auch wegen der kurzen Testzeit die ein Moderator für einen Artikel hat.

Was mir beim Nachprüfen und nachlesen noch aufgefallen ist, der IMC vom FX (Zambezi) besitzt sogar den Probe Filter (HT-assist) der Eigentlich nur für Server CPU´s vorgesehen ist.
Auch ECC und Chipkill werden laut AIDA64 unterstütz, leider sind diese aber deaktiviert.

CPU VID (aus der CPU ausgelesen) - Probe Filter & ECC (+Chipkill)


Original CPU VID im UEFI & geänderte CPU VID


Wird vortgesetz, evt in einem extra Artikel
 
Na toll, man überlagert die VID... damit hast du deine Aussage, dass man die VID ändern kann ja schon selber widerlegt. :P
 
Auch ECC und Chipkill werden laut AIDA64 unterstütz, leider sind diese aber deaktiviert.
Das ist logisch, denn es handelt sich nicht um Virtual ECC, sondern um klassisches ECC. Man braucht also 72-Bit breite DIMMs.

Und das Mainboard muss natürlich auch noch mitspielen. Das ist aber nichts Neues. Das gab es schon beim Agena, Deneb, usw.
 
Ich habe mir die ganze Sache jetzt auch noch einmal angesehen und ein wenig gelesen und möchte ein bisschen was zu dem Thema beisteuern. :P

Das Video mit AMD Power Cap, was du dort zeigst, ist nichts neues. Power Cap wird schon seit einiger Zeit von Server-Herstellern angeboten und wird auch für Intel-basierte Systeme angeboten. HP weist das groß aus. Hintergrund ist dabei, die Leistungsaufnahme einzelner Server oder auch ganzer Server-Farmen zu limitieren. Neben der reinen Messung der realen Leistungsaufnahme sind auch die Überwachungsfunktionen der TDP der CPU im Hinblick auf AMDs Turbo CORE inbegriffen bzw. dort setzt AMD an.

Dass die Spannung bei gleicher Taktfrequenz variiert wird, ist an keiner Stelle erwähnt. Im Gegenteil - größtes Verkaufsargument ist momentan die hohe Parallelität mit maximal 16 "Kernen". Es wird im Betrieb der P-State geändert.

http://www.planet3dnow.de/photoplog/index.php?n=17481

An dieser Stelle wird Power Cap ein wenig erklärt. "Flexibility to set power limits without capping frequency" heißt es eine Folie vorher. Für mich heißt das, dass ich zwar ein TDP-Limit setze, aber nicht die maximale Frequenz heruntersetze, um diese einzuhalten. Damit ist es möglich, hohe Taktfrequenzen zum Beispiel bei Single-Threaded-Anwengungen beizubehalten.

http://www.infoworld.com/d/green-it/amd-brings-power-capping-new-45nm-opteron-line-906
Hier wird sogar erwähnt, dass mithilfe von AMD Power Cap sogar der L3-Cache deaktiviert werden kann.

Da die Technik aber eher für Server-Umgebungen interessant ist, würde ich nicht davon ausgehen, dass das auch auf einem Desktop-System funktioniert.
 
Na toll, man überlagert die VID... damit hast du deine Aussage, dass man die VID ändern kann ja schon selber widerlegt. :P
Trotzdem kann sie geändert werden, so das auch CoreTemp die neue CPU VID anzeigt und nicht mehr die Originale.
Das gab es bei meinem X6 1090T nicht, da wurde immer die selbe angezeigt die auch Aida64 ausgelesen hat.

Da die Technik aber eher für Server-Umgebungen interessant ist, würde ich nicht davon ausgehen, dass das auch auf einem Desktop-System funktioniert.
Zuerst mal Danke für deinen Beitrag!
Ob das beim FX auch so funktionert kann ich noch nicht 100% nachprüfen, dazu bräuchte ich einen Spectrumanalyzer der schnell genug ist das triggern auszuwerten.

Ich glaube Dresdenboy hat in seinem Blog mal was darüber geschrieben, bzw ein Bild gepostet.

Mir kommt es halt ein wenig merkwürdig vor, dass ich meine FX mit 1.5V füttern kann und die Spannung bei CPUz immer mehr abnimmt je höher die CPU Last ist.
Bisher hab ich auch kein größeres Delta als 160W zwischen idle und Last gehabt, egal wieviel Spannung ich anlege. (Alle EE deaktivert im Bios)
 
Das mit der Variablen VCore hat schon seinen Grund.

Bei meinem Intel Sys hab ich im Bios die Einstellung LLC (1-5). 1 heist konstannte Vcore, 5 die Vcore wird bei Load kurz angehoben und dann wieder abgesenkt. Wenn die CPU im Load ist braucht sie ja nicht mehr so viel um stabil zu laufen.

1. hat man weniger Verbrauch und 2. nicht mehr die hohen Spannungsspitzen wenn die CPU wieder in idle geht. Ich hab gelesen das die Spitzen über 2 Volt erreichen können.

Damals hab ich mit meinem PhII rumgespielt, bei zu wenig Vcore schaffte die CPU den Load nicht mehr und das Sys stürzte ab. Wenn er aber man lief konnte ich mit k10stat die CPU auf 3,9 GHz hochschaukeln.
 
Das gab es bei meinem X6 1090T nicht, da wurde immer die selbe angezeigt die auch Aida64 ausgelesen hat.
Manche ASUS-Boards machen das auch beim Phenom so. Beim M4A89GTD PRO z.B. kann man die Spannung entweder absolut oder als Offset einstellen. Im ersten Fall lesen die Tools dann die im BIOS geänderte Spannung als neue VID aus.

Edit: Kommando zurück. Mit der aktuellen BIOS-Version wird beim M4A89GTD nach wie vor die ursprüngliche CPU-VID ausgelesen. Bei einem anderen ASUS-Board das ich habe (M3A-H/HDMI), ist es jedoch definitiv so, daß sich mit der manuellen Spannungseinstellung im BIOS auch die angezeigte VID ändert.
 
Zuletzt bearbeitet:
Startpunkt der Diskussion war nicht die Load-Line-Calibration. Ausgangspunkt ist eine hohe Spannung auf den APUs bei Gigabyte-Mainboards und die allgemeine Umsetzung der Standardwerte durch die Hersteller. :)
 
Manche ASUS-Boards machen das auch beim Phenom so. Beim M4A89GTD PRO z.B. kann man die Spannung entweder absolut oder als Offset einstellen. Im ersten Fall lesen die Tools dann die im BIOS geänderte Spannung als neue VID aus.
ok, zeigt AIDA64 dann auch eine geänderte VID an?

Das geht bei meinem Board nicht, da lässt sich nur der Offset der Vcore ändern.
Auch lassen sich die Turbo Spannungen nicht getrennt einstellen es gibt nur eine Vcore Einstellung (offset).
Die lässt sich aber auch unter 1 Volt einstellen im Bios. ;D
Eine LLC Einstellung biete mein Board auch nicht, nur APS (Active Phase Switching).
APS ist da aber wichtiger, weil die Spanungswandler bis zu 50% Verlustleistung freisetzen. ;)
 
ok, zeigt AIDA64 dann auch eine geänderte VID an?

Das geht bei meinem Board nicht, da lässt sich nur der Offset der Vcore ändern.
Auch lassen sich die Turbo Spannungen nicht getrennt einstellen es gibt nur eine Vcore Einstellung (offset).
Die lässt sich aber auch unter 1 Volt einstellen im Bios. ;D
Eine LLC Einstellung biete mein Board auch nicht, nur APS (Active Phase Switching).
APS ist da aber wichtiger, weil die Spanungswandler bis zu 50% Verlustleistung freisetzen. ;)
Nur für den Fall daß Du meine Änderung oben nicht gesehn hast: ich hab's nochmal getestet und bin schon teilweise zurückgerudert. :)

Es ist aber auch egal. Die VID wird sowieso immer unwichtiger in Zeiten in denen CPUs ihre Frequenz über thermische Budgets regeln. Da ist die Spannung ja nur noch ein Parameter unter vielen.
 
Zuletzt bearbeitet:
APS ist da aber wichtiger, weil die Spanungswandler bis zu 50% Verlustleistung freisetzen. ;)
Aber auch nur weil die Käufer so unvernünftig sind und zwölf Phasen oder mehr haben wollen, obwohl das oftmals wenig Sinn macht.
Und der Hersteller spart Geld, denn statt weniger hochwertiger Bauteile, kann er auf eine Masse von mäßiger Qualität setzen.

Würde man durchweg auf sechs Phasen (+/- zwei) setzen, könnte man sich EPU, DESA oder wie auch immer man es nennt, sparen.
 
@SPINA
Naja für eine 12 Thread CPU kann das schon von Vorteil sein, so hat jeder Thread eine Phase zur Verfügung.
Wobei ich nicht weiß ob HT (SMT) sich von der Spannung her teilen lässt.
Meine Board hat für jeden core eine Phase zur Verfügung und das ist auch gut so. ;)
 
Es gibt nur zwei Spannungsschienen. Eine für alle Kerne zusammen und eine für den L3 Cache, die Crossbar und den Memory Controller.

Die einzelnen Kerne werden dann mittels Clock Gating (bis family 10h) oder sehr effektiv mit Power Gating (ab family 15h) schlafen gelegt.
 
Bei Asus sieht das z.B. so aus:

attachment.php


8 Phasen gehen an die Kerne (@Windhund: nein kein Kern hat eine eigene Phase für sich alleine), die restlichen 2 auf den Uncore-Bereich.
 
Es gibt nur zwei Spannungsschienen. Eine für alle Kerne zusammen und eine für den L3 Cache, die Crossbar und den Memory Controller.

Die einzelnen Kerne werden dann mittels Clock Gating (bis family 10h) oder sehr effektiv mit Power Gating (ab family 15h) schlafen gelegt.
Stimmt, aber es sind 3 Schienen: Eine für alle Kerle, eine für uncore und eine für den Speicher.
Zumindest bei meinem Board.

@Twodee
Danke für das schicke Bild, natürlich hast du recht! Gut das du immer aufpasst. ;)
 
Zurück
Oben Unten