Announcement

Collapse
No announcement yet.

Open-Source ATI R500 PowerPlay Support

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

  • Open-Source ATI R500 PowerPlay Support

    Phoronix: Open-Source ATI R500 PowerPlay Support

    Behind open-source 3D acceleration for the ATI R600 and R700 series, improved power management has been a much sought after feature among those using the open-source xf86-video-ati and xf86-video-radeonhd drivers. There has been Dynamic Clocks support since earlier this year, but it's not nearly as advanced PowerPlay found within the Catalyst driver...

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

  • #2
    Real-time PowerPlay mode switching

    Just to clarify, it is possible to switch PowerPlay mode in real-time with xrandr.

    The current mode is exposed through the POWERPLAY RandR property, and can be set using the same. ie:

    xrandr --output PANEL --set POWERPLAY 0


    This method is unlikely to remain forever, but works well enough for now.

    Comment


    • #3
      Well, PowerPlay is not the only work done behind 3D

      Few days ago Christian published new version of audio patch for radeonhd: http://www.phoronix.com/forums/showthread.php?t=13026

      It would be great to have some testers of this patch!

      Comment


      • #4
        What about powerplay for old r100/r200 chips?

        I think lots have thinkpads with the radeon 7500 gpu, will we ever get powerplay?

        Comment


        • #5
          Originally posted by jingo View Post
          What about powerplay for old r100/r200 chips?

          I think lots have thinkpads with the radeon 7500 gpu, will we ever get powerplay?
          Is there even place for PowerPlay in hardware below R600? Wikipedia http://en.wikipedia.org/wiki/ATI_PowerPlay says it was introduced in Radeons 3xxx.

          Comment


          • #6
            Originally posted by jingo View Post
            What about powerplay for old r100/r200 chips?

            I think lots have thinkpads with the radeon 7500 gpu, will we ever get powerplay?
            Is PowerPlay not a feature from R500+ Mobile GPUs ? By the was the first Desktop card with this Feature was a R600 ( HD 3XXX )

            Comment


            • #7
              Strictly speaking PowerPlay is the proprietary software built into our proprietary drivers. It has been around as a feature for quite a while; definitely back to our R100-based mobile parts.

              The power management mechanisms built into the GPU (ie the things a driver developer can twiddle) change from one GPU generation to the next.

              Some of the low-level parts of PowerPlay (ie the code which interacts with power management features of the chip) are implemented in AtomBIOS in order to minimize the amount of chip- and board-specific code we need to put in the drivers. Those functions are made visible to open source developers through the atombios.h file we provide.

              Once we get 6xx/7xx 3D out the door we plan to make some of that information visible to open source driver devs, although I don't know yet how far we will be able to go. Also not sure yet how much we will need to go around AtomBIOS here, or whether making AtomBIOS calls will be sufficient.

              Anyways, I mostly wanted to distinguish between PowerPlay (which includes a lot of proprietary driver code to help make decisions about which power settings to choose) and the low level power management settings in the chip. We don't plan to open up PowerPlay, but we do plan to provide enough information to support basic power management settings.

              Comment


              • #8
                PowerPlay as a feature was only officially supported on mobile parts until around the HD3xxx family. We did have a subset of the PowerPlay features on earlier desktop parts though, mostly thermal management and a bit of overclocking support. I believe HD3xxx was the first time where we offered similar power management capabilities on desktop parts that we had been previously offering on mobile parts, ie "PowerPlay on desktop GPUs".

                This is part of the reason I don't want us talking about "PowerPlay" too much -- it just gets too comfusing since PowerPlay was our proprietary edge on the mobile parts only. I understand that there is a desire for some basic power management on all our parts, and that is what we are going to try to provide -- with the qualifier that I don't know what that support will look like yet, or how far back we will be able to go.
                Last edited by bridgman; 10-08-2008, 06:07 PM.

                Comment


                • #9
                  Thanks for the clarification bridgman.

                  I wasn't sure about calling the whole she-bang by that moniker myself, and actually considered renaming most of the files and functions to simply refer to "powermgmt" and "PowerMode".

                  One of the future patches will definitely be this renaming thing.

                  Comment


                  • #10
                    Sounds good. No rush, it just made me cringe every time I saw "PowerPlay" appearing in a post 'cause I knew that one day I would have to sit down and explain all this

                    Comment


                    • #11
                      So PowerPlay is an algorithm that regulates voltage in an intelligent way?

                      If that's the case, can AMD provide pseudo code for that algorithm?

                      If not, is it likely that the community can come up with an algorithm that is just as good, or is the algorithm very complicated?

                      Comment


                      • #12
                        Originally posted by bridgman View Post
                        Once we get 6xx/7xx 3D out the door...[SNIP]
                        Whats the status on that? Can we get a definitive ETA?

                        Also, what will be the extent of the "6xx/7xx 3D" implementation? Assuming "out the door" means more than just docs, but usable code.

                        Will it actually be usable for anything other than glxgears? Or in other words, will it be as application compatible as the Nvidia driver is for Nvidia hardware?

                        Will it remove the need to have Microsoft Windows? ie. will it work with WINE?

                        If the answer to the last two questions is "Yes", what purpose will the crippled proprietary ATi driver have then? If there is indeed a purpose, what would be the extent of disparity between the two drivers?

                        Oh and sorry for being so harsh to you previously. I didn't mean for it to sound personal. Honestly, the proprietary ATi driver is a spit in the face to Linux users. I hope you understand where i was coming from.

                        Comment


                        • #13
                          Originally posted by cruiseoveride View Post
                          Whats the status on that? Can we get a definitive ETA?
                          No, sorry... the day we have all the IP issues worked out we'll have something in a public repo (unless it's *really* late at night). While we have open issues, all I can do is give you best guesses.

                          Originally posted by cruiseoveride View Post
                          Also, what will be the extent of the "6xx/7xx 3D" implementation? Assuming "out the door" means more than just docs, but usable code. Will it actually be usable for anything other than glxgears? Or in other words, will it be as application compatible as the Nvidia driver is for Nvidia hardware?
                          We want to quickly get 6xx/7xx 3D support to the same level as R3xx-R5xx, ie OpenGL 1.3+, easy-to-understand code, and everything needed to build more functionality. The R6xx/7xx have relatively huge state information rcompared to earlier generations, so one of our guys (Richard) is working on a simple shader compiler that will set up all the state info as well as the actual shader microcode.

                          Originally posted by cruiseoveride View Post
                          Will it remove the need to have Microsoft Windows? ie. will it work with WINE?
                          Yes and no. The current open source drivers work OK with Wine but some of the games need higher levels of OpenGL than the drivers support today. We're kind of at DX8 level until we get memory management in DRM, but Dave and others are working hard on that now.

                          Originally posted by cruiseoveride View Post
                          If the answer to the last two questions is "Yes", what purpose will the crippled proprietary ATi driver have then? If there is indeed a purpose, what would be the extent of disparity between the two drivers?
                          The answers to the last two questions are not "Yes" yet. Somewhere betweeen 6 and 12 months is probably a good guess.

                          Originally posted by cruiseoveride View Post
                          Oh and sorry for being so harsh to you previously. I didn't mean for it to sound personal. Honestly, the proprietary ATi driver is a spit in the face to Linux users. I hope you understand where i was coming from.
                          No worries. You need to understand that the fglrx driver is aimed at a specific market today (high performance workstation on RHEL and SLE*) but we are working hard to make it more broadly useful. If you were in the target user base you hopefully would feel differently. Hopefully

                          Originally posted by Louise View Post
                          So PowerPlay is an algorithm that regulates voltage in an intelligent way?
                          It's more than voltage -- there are various combinations of voltage, engine clock and memory clock which work well together. We try to capture those combinations in the AtomBIOS tables. Voltage is a bit of a scary issue relative to warranty -- haven't figured out exactly what to do about that yet.

                          Originally posted by Louise View Post
                          If that's the case, can AMD provide pseudo code for that algorithm? If not, is it likely that the community can come up with an algorithm that is just as good, or is the algorithm very complicated?
                          We are hoping to give enouch chip-specific information to be able to set a useful variety of power states, but we are not planning on giving out all of the (primarily Windows-specific) PowerPlay algorithms which look at all the stuff going on in the system and try to pick appropriate power states. I think it will work out OK.
                          Last edited by bridgman; 10-09-2008, 02:07 AM.

                          Comment


                          • #14
                            Very interesting reading =)

                            Comment


                            • #15
                              Powerplay matters a lot

                              Getting 11C lower temps on my 3870 with powerplay activated, not to mention fan spinning slower

                              Comment

                              Working...
                              X