Announcement

Collapse
No announcement yet.

Dynamic Clocks For Radeon R500+

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

  • Dynamic Clocks For Radeon R500+

    Phoronix: Dynamic Clocks For Radeon R500+

    When it comes to ATI open-source power management, so far AMD's open-source kindness has just yielded a list of registers but no proper documentation or how PowerPlay exactly works. However, AMD's Alex Deucher has just committed "Dynamic Clocks" support for the Radeon R500 and R600 graphics cards...

    http://www.phoronix.com/vr.php?view=NjQxNw

  • #2
    This is very interesting but also confusing.

    Originally posted by bridgman
    Originally posted by "puntarenas
    However other reviews tell things still work driver dependent, so if changing power states is still a driver job, does it work with fglrx and will those specifications also become availiable for the RadeonHD team or are these processes completely transparent to the software now?
    My understanding is that there is still some driver involvement, but the new HW capabilities on 6xx parts allow faster and more fine-grained power-down than the driver can do on its own so overall power savings can be improved. We will be making this information available to open source developers. In parallel, support is being added (or has been added) to fglrx although I'm not sure of the exact status.
    Source

    So what I still like to know is which PowerPlay functions are implemented in hardware (and therefore should work on Linux out of the box?!), which functions are driver dependent and which will work with RadeonHD now or soon.

    If you want to leak some more information, I would also like to know when RV770 will arrive

    Comment


    • #3
      I don't think anything is completely implemented in hardware. Everything needs to be set up by the driver and AFAIK pretty much everything needs to be enabled and disabled at certain times. The difference with the newer chips seems to be that once everything is set up the hardware can make some of the clock switching decisions without driver intervention, so that power consumption can be adjusted more quickly as the workload changes and more power can be saved as a result.

      Alex is experimenting with the AtomBIOS calls for dynamic clock gating but so far we aren't seeing a lot of benefit. Whenever we find something that seems useful it will probably end up in RadeonHD within a couple of days of when we find it.

      Not sure about voltage adjust yet.
      Last edited by bridgman; 04-05-2008, 10:48 PM.

      Comment


      • #4
        Thank you

        Comment


        • #5
          great news! Powerplay is last thing missing from open-source ATI drivers for me

          Comment


          • #6
            i dont see anything here: http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/
            Am i looking in the wrong place?

            Comment


            • #7
              Originally posted by slacker View Post
              i dont see anything here: http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/
              Am i looking in the wrong place?
              Add:
              Option "DynamicClocks" "TRUE"
              to the device section of your config.

              my powerplay stuff is available here:
              http://cgit.freedesktop.org/~agd5f/x...=agd-powerplay
              however, you can't dynamically change the power state at the moment as X does not provide a means to do so.

              Comment


              • #8
                Originally posted by agd5f View Post
                Add:
                Option "DynamicClocks" "TRUE"
                to the device section of your config.

                my powerplay stuff is available here:
                http://cgit.freedesktop.org/~agd5f/x...=agd-powerplay
                however, you can't dynamically change the power state at the moment as X does not provide a means to do so.
                Sorry to be dense, but this means there is not even a way to change it manually, i.e. at the commandline?

                Comment


                • #9
                  Originally posted by pigah View Post
                  Sorry to be dense, but this means there is not even a way to change it manually, i.e. at the commandline?
                  You can set the mode in your xserver config and it will stay as set until you change it and restart X. It's more of a proof of concept at this point. I'll be adding it to kernel modesetting where you will be able to change the settings on the fly using sysfs.

                  Comment


                  • #10
                    I'm actually using the latest git revision of xf86-video-radeon. The driver works beautifully. 2D performance are awesome and 3D is improving. Concerning powerplay options I'm unable to set any mode in my xorg config file. It seems that
                    Code:
                    Option "PowerPlayMode" "1,2 or 3"
                    is not recognized as a valid option. Am I missing something?
                    Thanks in advance

                    Comment


                    • #11
                      Originally posted by piccolotux View Post
                      Am I missing something?
                      That feature is not in master yet. You may checkout agd-powerplay branch in git://people.freedesktop.org/~agd5f/xf86-video-ati or agd-powerplay branch in git://people.freedesktop.org/~csimpson/xf86-video-ati

                      You won't be able to change the power profile live, you will have to restart the server

                      Comment


                      • #12
                        Originally posted by c0un7d0wn View Post
                        That feature is not in master yet. You may checkout agd-powerplay branch in git://people.freedesktop.org/~agd5f/xf86-video-ati or agd-powerplay branch in git://people.freedesktop.org/~csimpson/xf86-video-ati

                        You won't be able to change the power profile live, you will have to restart the server
                        So, from what I understand, the option DynamicClocks actually is not working as expected (It does not scale the clock)...Am I wrong?
                        Thank you for the reply

                        Comment


                        • #13
                          That branch is basically a proof of concept. It only implements sclk, mclk, and pcie lane adjustments statically based on the mode you select in your xorg.conf. There's a lot more involved. There is currently no interface in X to do this dynamically, so I've been looking at implementing it the radeon kms drm. Then userspace utilities like gnome-power-manager can adjust power policy on the fly.

                          Comment

                          Working...
                          X