Announcement

Collapse
No announcement yet.

Updated AMD P-State Driver Posted For Improving Linux Power Efficiency

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    For now, this will only be of benefit with CFS right?

    Comment


    • #12
      Originally posted by mlau View Post

      either your bios has buggy cppc tables, or you need to modprobe it as "modrobe amd-pstate shared_mem=1"
      "modrobe amd-pstate shared_mem=1" doesn't work either. How can I check for the CPPC tables? This is a HP EliteBook with AMD Ryzen 7 PRO 4750U. So I think this CPU should be supported.

      Comment


      • #13
        Originally posted by PuckPoltergeist View Post

        "modrobe amd-pstate shared_mem=1" doesn't work either. How can I check for the CPPC tables? This is a HP EliteBook with AMD Ryzen 7 PRO 4750U. So I think this CPU should be supported.
        do the following before modprobe:
        echo "func amd_pstate_init +p" > /sys/kernel/debug/dynamic_debug/control

        you should be able to see a reason for the failure printed in the kernel log.
        Last edited by mlau; 19 November 2021, 03:14 PM.

        Comment


        • #14
          Originally posted by mlau View Post

          do the following before modprobe:
          echo "func amd_pstate_init +p" > /sys/kernel/debug/dynamic_debug/control

          you should be able to see a reason for the failure printed in the kernel log.
          My bet would be on HP's sometimes screwy ACPI tables. Laptops of any brand are notorious for those, however.

          Comment


          • #15
            Originally posted by mlau View Post

            do the following before modprobe:
            echo "func amd_pstate_init +p" > /sys/kernel/debug/dynamic_debug/control

            you should be able to see a reason for the failure printed in the kernel log.
            Nothing! Is there something I'm missing in kernel config?

            Comment


            • #16
              Originally posted by stormcrow View Post

              My bet would be on HP's sometimes screwy ACPI tables. Laptops of any brand are notorious for those, however.
              Seems you're right :/

              Comment


              • #17
                amd-pstate.shared_mem=1 was required to get the module to finally load for me with my 5900X and ASUS Crosshair 8 Dark Hero.
                Has anyone else done some testing yet? I haven't done any testing yet with a load, but at idle I'm actually seeing more power draw with schedutil/ondemand than with performance. I'm using ryzen-smu and ryzen monitor to view the statistics.

                I have found that with regards to the performance governor I'm getting the same exact results at idle both with and without the CPPC driver. With nothing but my DE running and ryzen monitor open the highest effective core frequency is about 200MHz, with every core at 0.2V with the except of the core running ryzen monitor which is sitting at 0.22V. The average core CC6 is at 98% and package CC6 between 90-95%. Package power is reported at 30W. Temperature stays stable at 28C.

                Switching to schedutil results in worse idle power draw, with the average core CC6 at 95% and package CC6 dropping to 70%. The highest effective core frequency did drop down to 60MHz, but the voltages on all the cores are now a lot more variable, jumping between 0.2-0.3V, with the core running ryzen monitor hitting almost 0.4V. Package power is reported at 32W. Temperature is stable at 29C.

                Worst power draw happens when using ondemand. Average core CC6 is now 70-80% with the cores repeatedly dropping out of sleep. The cores are now jumping between 0.2-0.5V, with the core running ryzen monitor now using 0.7V. Package CC6 is terrible at with it sometimes dropping to 0% but jumping around everywhere below 30%. Package power is now almost 35W. Temperature is stable at 30C.

                So far at idle I'm finding the driver isn't helpful for power efficiency if you use anything but the performance governor. I still need to do testing at low, medium, and high loads to see where performance and power efficiency lands.

                Comment


                • #18
                  Originally posted by reba View Post

                  True:


                  Setting amd_pstate.shared_mem=1 wasn't necessary here, but that could be because of xanmod's kernel.
                  Just a heads-up, xanmod bundles v3 in current releases so you'll need to wait for the them to update or check out the source tree, revert the v3 patch set and merge v4 then rebuild if you want to test the v4 release.

                  Comment


                  • #19
                    Originally posted by PuckPoltergeist View Post

                    Nothing! Is there something I'm missing in kernel config?
                    Did you unload acpi_cpufreq first?
                    Code:
                    modprobe -r acpi_cpufreq && modprobe amd_pstate

                    Comment


                    • #20
                      I'm using fedora 35 with xanmod. Both amd-pstate and acpi-cpufreq are compiled into kernel (not as modules) and acpi-cpufreq is used. My cpu is 3900x (I have cppc enabled in bios and it works in Windows) with Gigabyte x570 pro. What I'm doing wrong?
                      Last edited by tehehe; 20 November 2021, 11:11 AM.

                      Comment

                      Working...
                      X