P-States-SSDT scheint nicht zu funktionieren

  • Hallo zusammen,


    ich habe nach der Anleitung im Tony-Mac-Forum (quick-guide-to-generate-a-ssdt-for-cpu-power-management) eine SSDT für die P-States meines Prozessors erstellt.
    Anschließend in /EFI/OZ/ACPI/Load kopiert, Reboot und NVRam-Reset gemacht. Intel Power Gadget zeit mir aber konstant Werte um den maximalen Turbo-Takt herum, d.h. schnelle Schwankungen zwischen 3.8 und 3.5 GHz. Zusätzlich habe ich boot-args um -xcpm erweitert. Im Bios sind EIST, Platform Power Management und ErP deaktiviert.


    Kann ich irgendwie überprüfen, ob die SSDT korrekt geladen wird?


    Eigentlich sollte doch die CPU im Idle deutlich unter den Standarttakt gehen. Ich habe jetzt mal einen Log ausgeben lassen und darin ist kein einziger Wert unter 3,5Ghz (Standarttakt). Ohne SSDT bekomme ich auch ganz selten mal einen 800.



    Dank und Grüße!

    Dateien

    • SSDT.aml

      (2,18 kB, 89 Mal heruntergeladen, zuletzt: )

    2 Mal editiert, zuletzt von Stellaris ()

  • Naja lade Dir das ssdtPRGen Script am besten direkt von github herunter dazu einfach ein terminal öffnen und den folgenden Befehl eingeben:

    Code
    1. curl -o ~/ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/Beta/ssdtPRGen.sh

    anschließend mit

    Code
    1. chmod +x ~/ssdtPRGen.sh

    startfähig machen und zu guter letzt mit

    Code
    1. sh ssdtPRGen.sh

    ausführen. Das Script arbeitet eingentlich zuverlässig und ist dabei selbsterklärend insbesondere bitte auch die Warnhinweise vom Script beachten :D

  • Hi griven,
    ich habe alles nach Anleitung gemacht, auch die Kext zum testen verwendet. Diese zeigt mir auch, dass meine p-States erreicht werden. Ich war nur verwirrt, dass das Intel Power Gadget mir nur Werte für hohe Frequenzen anzeigt. Da ich aber auch getestet hab, ob alle für PM zuständigen Kexte geladen sind und das der Fall ist, schätze ich, dass es tatsächlich richtig funktioniert und die p-States einfach sehr schnell umgeschalten werden (hab ich irgendwo mal gelesen).


    Kann es einfach sein, dass macOS eher in den hohen Taktraten bleibt, wenn ein Netzteil angeschlossen ist (Desktoprechner :whistling: )?


    Grüße

  • Hast du mal die SSDT.aml aus dem ssdtprgen Ordner im System manuell nach EFI/OZ/ACPI/Load kopiert?

    Du kommst bei deinem Problem nach dem unendlichsten Versuch nicht weiter? Dann schreib mir eine Nachricht für eine TeamViewer Sitzung. Nur wenn es gar nicht mehr weiter geht!
    Alle anderen Fragen und Anliegen gehören ins Forum.

  • Ich muss mal schnell hinzufügen, dass auf meinem Ozmosis-Gerät die manuell erstellte SSDT.aml den gleichen Effekt erzielt.
    Mit SSDT läuft die CPU fast durchgängig am Anschlag, ohne SSDT taktet sie brav hoch und runter.

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • 800mhz ist als sehr niedrige belastung angegeben. Wenn der Rechner fast nicht benutzt wird, taktet er auf diese Frequenz und spart viel Strom. Die weiteren 2-4 Frequenzen sind dann sehr hoch. Bei dir zB 3500mhz als standardtakt und 3900mhz als Turbo State.


    Jetzt könnte man denken, wieso nur so wenige, das ist doch Stromverschwendung. Das Problem hier ist eigentlich die "Reaktionszeit" der CPU. Vereinfacht dargestellt: Wenn die CPU auf 800mhz taktet und mehr power von einem Task benötigt wird, würde bei mehr CPU States die CPU um höher zu takten, viel mehr States durchlaufen müssen. Das wechseln der Frequenz braucht etwas Zeit, wodurch die richtige power für einen Task immer etwas verspätet eintreffen würde. Wenn man ganz viele States hat, wird diese Verzögerung immer größer und die Rechenzeit länger --> Rechenpower geringer.


    In deinem Fall ist das System so gestrickt, dass die CPU eher überreagiert. Bei einem Task der mehr Power benotigt als 800mhz der CPU liefern, springt die CPU direkt auf 3500mhz. Dadurch braucht es nur einen Frequenzwechsel. Wenn der Task unter 3500mhz power braucht, hat er auf jeden Fall genug Rechenleistung und nur geringe Verzögerung. Wenn der Takt erstmal auf 2700mhz, dann auf 2900mhz springen würde und dann während des Ausführen des Tasks zwischen CPU States wie 2600mhz, 2700mhz, 2800mhz und 2900mhz herumspringen würde, hätte das einiges an Leistungseinbußen zur Folge und die Rechenzeit würde sich verschlechtern.

    Du kommst bei deinem Problem nach dem unendlichsten Versuch nicht weiter? Dann schreib mir eine Nachricht für eine TeamViewer Sitzung. Nur wenn es gar nicht mehr weiter geht!
    Alle anderen Fragen und Anliegen gehören ins Forum.

    Einmal editiert, zuletzt von kuckkuck ()

  • Danke @Kuckuck für die ausführliche Antwort :danke: .
    So wie ich dich verstehe heißt das, dass mit meinen p-States schon alles richtig läuft... wenn es ein Laptop auf Batteriebetrieb wäre, würde sich wohl ein anderes Bild zeigen.
    Was ich noch nicht verstehe ist, warum dann meine CPU überwiegend im Turbo-Bereich über 3,5Ghz läuft, denn bis auf Browser und Konsole ist zur Zeit nicht viel offen...


    andere Frage: Hat es einen Einfluss, ob ich im BIOS Intel Turbo Boot ausschalte, oder übernimmt das sowieso OS X?


    Grüße

  • Wenn du turbo im BIOS ausschaltest wird der Prozessor generell nur bis 3,5 kommen. Nur mit turbo schafft er 3,9. Dementsprechend übernimmt da nichts OSX, OSX macht nur die Auswahl des benötigten states.


    Schau doch mal in die Aktivitätsanzeige und schau dort was vielleicht auslastet. Falls da aber nichts ist, könntest du noch eine Frequenz wie zB 2700mhz in die SSDT implementieren ;)

    Du kommst bei deinem Problem nach dem unendlichsten Versuch nicht weiter? Dann schreib mir eine Nachricht für eine TeamViewer Sitzung. Nur wenn es gar nicht mehr weiter geht!
    Alle anderen Fragen und Anliegen gehören ins Forum.

  • Does the Giga Byte GA - B75M - D3H motherboard need ssdt ..? My processor is Intel Pentium g2030

  • Use IntelPowerGadget and check if alle P-States are reached. If they are reached a SSDT is not necessary if not you may use pikeralpha´s ssdtprgen script to create one.

  • griven

    Hat das Label Erledigt hinzugefügt