Announcement

Collapse
No announcement yet.

Ryzen cpu gouvernor bug when using custom p-states?

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

  • Ryzen cpu gouvernor bug when using custom p-states?

    I decided to enable power saving stuff in Linux 4.14 so I turned on all the gouvernors in modules and acpi-cpufreq.

    On the module acpi-cpufreq is loaded, even if I did set performance as "default", the cpu voltage got down to 0.88v as requested by P2 but the clock "stay the same" even if phoronix test suite say it's 3x slower...

    I did test with powersave, ondemand and performance, it seam to just stay stuck in P2 no matter what and the cpu clock speed indicated by cpuinfo stay to max 4017Mhz even if it's actually running at 1550Mhz.

    Someone got similar issue? Can it be related to pstates overclocking?

  • #2
    Bios don't move between p-states. I can enabled or disable C6 but when it's enabled, it down my voltage down to 0.39V and i'm not even sure it clock down the CPU properly. I get occasional crash (mostly on idle as low voltage don't append on load, usually, between 0.39v <-> 1.335v transition) So I would like to not have that cstate that down the thing to 0.39v but still have the possibility to lower the clock and voltage defined by pstates.

    Edit : my P2 is set for 0.88v, I would like to have that as the "minimum".
    Last edited by RavFX; 08 November 2017, 11:27 AM.

    Comment


    • #3
      Originally posted by debianxfce View Post

      I think you focus too much on voltages, let the bios and cpu do the energy saving. In Asus UEFI bios you have predefined Energy saving profile.

      It crash if I leave it to the bios. the difference between his C6 and P0 is to much and it equal to about one crash each to two day if I leave C6 on.

      It's a R7 1700 @ 4.0Ghz, 1.33v (Excellent bin from RMA return). Work fine except if I leave C6 enabled and disable cpu gouvernor (BIOS CONTROLLED) then it will usually crash during light browsing or idle. C6 disabled and no gouvernor enabled in kernel (No power saving at all) work fine and is stable but do pump an extra 15-20w at idle from the wall (load power sucking seam to be the same). And C6 disabled + gouvernors enabled (Tentative of OS controlled power saving) just stuck the CPU to P2 (1.55Ghz) even with performance gouvernor.

      If it was not crashing with C6 enabled then I would not have tries to get the p-states to work from the gouvernor nor asking the question on this forum.

      But I will go look what these profile are (I never use the limited mode, I press F7 straight away and I did not see that in advanced)

      Comment


      • #4
        Originally posted by debianxfce View Post

        Many kernel config options affects to stability. Play with kernel timer from 250Hz to 1000Hz and have virtualisation and kvm enabled with rx series gpus. Use the latest kernel from kernel.org.
        I'm using 4.14-rc7, 1000Hz, KVM is enabled and I have some XEN stuff enabled for now (not booting XEN hypervisor right now so xen virtualisation stuff should be disabled). I note that the KVM module load when i'm not booting XEN hypervisor and I do have a rx "580" (a 480 with a patched 580 BIOS). Maybe the RX coupled with KVM and C6 cause the crashes so I will disable KVM and enable C6 to see if it fix something. I doubt that the OC of that RX cause a problem as the problem does not occur with C6 disabled and C6 touch only the CPU.

        I did look in the BIOS and I saw your "profiles" section. These are just dumb auto-oc or moar saving but no OC profile. Mine is on "custom" because I do set overclocking myself.

        "Asus optimized" = Auto overclock by Asus (lower speed, higher volt, higher temperature)
        Normal = Normal, default cpu clock, fancy asus saving disabled
        Energy saving = It's normal with a extra fancy asus power saving option enabled, if you go in advanced mode, you see a big "Don't enable when overclocked" in red in the option description.

        You can actually turn on or off power saving by enabling or disabling C6, it seam to be the only real "in cpu" power saving option (and it does save about 20w on my system when idle)

        Comment


        • #5
          Originally posted by debianxfce View Post

          To prevent random kernel lock ups, enable RCU_NOCB_CPU and boot the kernel with the rcu_nocbs=0-X command line parameter. X is the cpu thread count -1.

          I see, thanks for the remember, I did have that RCU_NOCB_CPU enabled but CONFIG_RCU_NOCB_CPU_ALL is gone now... And now I have to specify in grub. That might be it! I update grub config, reboot in BIOS to enable C6 and I see tomorrow how it goes!

          Comment


          • #6
            Fixed! (That removed CONFIG_RCU_NOCB_CPU_ALL option should be added back.. how distrib maintainers can guess how many core there users have?)

            10-25w saved!

            Comment


            • #7
              Originally posted by debianxfce View Post

              Intel kernel developers do everything to make new Amd and old intel hardware buggy and they do not react to bug reports and many bugs are unsolved for years. It looks like my Amlogic S912 arm64 tvbox is best supported by Linux, latest kernels are stable and do have silent dmesg output. Audio is not implemented yet and arm mali gpu support will be never open source.
              OPTION CONFIG_RCU_NOCB_CPU_ALL added on May 7, 2013
              WORKAROUND for Ryzen first appeared on Google on May 11, 2017 (did not find older entry related to Ryzen)
              OPTION CONFIG_RCU_NOCB_CPU_ALL Yanked on May 25 2017 (about two week after proper workaround showed up, during Linux 4.13 merge window)

              Noise need to be made. The maintainer who deleted that option is Paul McKenney and do work at IBM.
              Here is the kernel entry : https://patchwork.kernel.org/patch/9749291/
              Last edited by RavFX; 16 November 2017, 11:27 PM.

              Comment

              Working...
              X