Announcement

Collapse
No announcement yet.

Voltage Tweaking Comes To R600+ GPUs On Linux

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

  • #11
    Originally posted by LiquidAcid View Post
    The code is now in drm-radeon-testing, however I'm not very happy with the choice of low power mode switching.

    While my card runs on 250Mhz on Windows most of the time (maximum clock is 750MHz), the radeon DRM only downclocks to 500MHz when the system is 'idling' (no 3D apps running).
    I believe the power states are influenced at least in part by the range of speeds each card/laptop vendor chooses to validate and include in their video BIOS image. In some cases those states are very limited - the GPU and memory may be able to run fine at lower speeds but those speeds are not included in the BIOS power state list.

    The driver can over-ride those settings but I don't think the devs want to rush into that without a *lot* of testing.
    Test signature

    Comment


    • #12
      Originally posted by bridgman View Post
      I believe the power states are influenced at least in part by the range of speeds each card/laptop vendor chooses to validate and include in their video BIOS image. In some cases those states are very limited - the GPU and memory may be able to run fine at lower speeds but those speeds are not included in the BIOS power state list.

      The driver can over-ride those settings but I don't think the devs want to rush into that without a *lot* of testing.
      Yeah, but that's not the issue here.

      The current code never selects the lowest mode inside a powerstate, unless the DPMS state if off - then it _does_ downclock to the lowest mode. That would be 250MHz core clock for me.

      While a crtc is active the code only reclocks between the medium and high mode of a powerstate, in my case 500MHz and 750MHz.

      I have verified this by monitoring radeon_pm_info but also by looking at the code. I'm no doubt that Alex did this intentional, probably because on some configurations the lowest mode inside the 'low'-powerstate doesn't provide enough memory bandwidth for scanout.
      Since memory isn't reclocked on my card (at least I'm not seeing this and I think the ATOM tables all store the same mem clock) it doesn't make a difference for _me_.

      Again, the diff's just a (dirty) hack, but enough for me to quiet down the card for watching e.g. HD movies on the system.

      Comment


      • #13
        Some users reported unstable LVDS when the lowest power state was enabled, so I made it DPMS off only for now until we sort out the problem further.

        Comment


        • #14
          OK, thanks for the confirmation - I'm using an old CRT here, so if there is a problem with LVDS stability then I'm probably not seeing it here

          Comment


          • #15
            Oh, and anyway - good work on the whole radeon stack Alex! It's really nice to see how everything evolves and how new features are constantly popping up (kms, pm, tiling, gallium, etc.)

            Comment


            • #16
              Originally posted by LiquidAcid View Post
              The code is now in drm-radeon-testing, however I'm not very happy with the choice of low power mode switching.

              While my card runs on 250Mhz on Windows most of the time (maximum clock is 750MHz), the radeon DRM only downclocks to 500MHz when the system is 'idling' (no 3D apps running).
              Yeah I came to that same conclusion. Just tried d-r-t to see if the downvolting code was working, and it was a bit of a surprise to me that my system was actually consuming more power than the last time I tried d-r-t without the downvolting code. Apparently with the reworked pm code "low" actually means "medium", which is almost the same as high on my GPU. So definitely not a great power saver.

              Unsatisfied with this (and since I knew that 250Mhz was enough for desktop work) I did this small hack:
              http://www.math.uni-bielefeld.de/~tj...-profile.patch

              This just adds a 'minimum' profile which select the 'low'-powerstate and enables the lowest mode inside this state (the same as the one selected when DPMS has the screen turned off).
              Works for me at least
              Thanks for the patch, works great.

              Comment


              • #17
                wait?
                you study in bielefeld? xD

                Comment


                • #18
                  Originally posted by Pfanne View Post
                  wait?
                  you study in bielefeld? xD
                  Lies, damn lies! Bielefeld does not exist!

                  Comment

                  Working...
                  X