Announcement

Collapse
No announcement yet.

Catalyst 9.10: ATICONFIG powerplay/powerstates? (4870x2 - Ubuntu 9.10 x64)

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

  • Catalyst 9.10: ATICONFIG powerplay/powerstates? (4870x2 - Ubuntu 9.10 x64)

    Hi all,

    My first post here =)! http://phoronix.com/forums/images/smilies/smile.gif

    Let me write a brief introduction before I refer to the problem I have:

    I just installed Ubuntu 9.10 x64 on my main build (the one I use for gaming) along with Windows 7 Professional x64 (was already installed).

    I also installed latest Catalyst drivers for Ubuntu x64 (Catalyst 9.10 / fglrx version 8.661) by bulding all the packages with the installer provided by ATI on their website (with the option --buildpkg Ubuntu/karmic). I then ran aticonfig --initial -f and had no problems at all after reboot: 3d accel working, compiz, etc.

    The build's graphics card is a stock ATI 4870x2 reference design with its original reference cooler.

    I have modified and flashed the BIOS of the card (let's better say both bioses MASTER and SLAVE) to get better temps and lower power consumption by editing the 2D powerstate (underclocking): reference BIOS has its 2D settings at 507Mhz Core / 500Mhz Memory at 1.0625 volts for both cores, whereas mine runs in 2D at 200Mhz Core / 200Mhz Memory at 0.9625 volts for both cores. This results in a 10?C drop for both cores and about 20W~50W saving while on desktop. 3D powerstate remains the same (reference), at 750Mhz Core / 900 Mhz memory at 1.2625 volts for both cores.

    Now, in Windows (any Windows such as XP, Vista, 7 x86 or x64), with Catalyst 9.10 installed (and no other third party software installed!), POWERPLAY works correctly: the card works in its 2D state while on the desktop (200Mhz core / 200Mhz mem) so the temps are quite low (below 70? on both cores) and the card's fan stays at its lowest setting by default (27% or 1300RPM) and remains unnoticeable/inaudible.
    When running any 3D app, 3D state kicks in (750Mhz core / 900Mhz mem) and the card becomes a lot more noisy as temps reach easily 90-95?C on both cores and fan speeds up (above 40 or 50%, reaching 3000RPM or even more, which is noticeable). Once back to desktop, the 2D powerstate is once again active and the card cools down and becomes almost silent again. This 2D/3D behavior is the same for any ATI graphics card (also NVIDIA i think) so the Bios tweak I did shouldn't be a problem, it is just an underclock in 2D mode for power saving.

    Okay, in Ubuntu 9.10 x64, using the display driver fglrx, it seems that the card is always set to stay in 3D state (750 core/900 mem), thus making a lot of noise while on linux desktop, which is quite annoying, and also a complete waste of power. This is what I get with the usual aticonfig commands:

    $aticonfig --list-adapters
    * 0. 03:00.0 ATI Radeon HD 4870 X2
    1. 04:00.0 ATI Radeon HD 4870 X2
    ---
    $aticonfig --adapter=0 --od-getclocks

    Adapter 0 - ATI Radeon HD 4870 X2
    Core (MHz) Memory (MHz)
    Current Clocks : 750 900
    Current Peak : 750 900
    Configurable Peak Range : [200-800] [200-1000]
    GPU load : 0%
    ---
    $ aticonfig --adapter=0 --od-gettemperature

    Adapter 0 - ATI Radeon HD 4870 X2
    Sensor 0: Temperature - 91.00 C <---- Very HOT!http://phoronix.com/forums/images/smilies/mad.gif
    ---
    $aticonfig --pplib-cmd "get fanspeed 0"
    Fan speed query:
    Query Index: 0, Speed in percent
    Result: Fan Speed: 38% <---- Loud!http://phoronix.com/forums/images/smilies/mad.gif
    ---
    $ aticonfig --pplib-cmd "get temperature 0"
    Temperature for thermal controller 0 is 91.000000
    ---
    $ aticonfig --pplib-cmd "get activity"
    Current Activity is Core Clock: 750MHZ <---- 3D powerstate!
    Memory Clock: 900MHZ <---- 3D powerstate!
    VDDC: 1250 <---- 3D powerstate!
    Activity: 0 percent
    Performance Level: 0
    Bus Speed: 5000
    Bus Lanes: 16
    Maximum Bus Lanes: 16
    ---

    With the overdrive options of aticonfig I can modify the clocks of the card but not the voltage of the cores (VDDC), so I type:

    $aticonfig --adapter=0 --od-setclocks=200,200
    ---
    $ aticonfig --pplib-cmd "get temperature 0"
    Temperature for thermal controller 0 is 83.50000 <-- STILL Very Hot! Should be below 70?
    ---
    $aticonfig --pplib-cmd "get fanspeed 0"
    Fan speed query:
    Query Index: 0, Speed in percent
    Result: Fan Speed: 35% <---- STILL Loud!
    ---
    $ aticonfig --pplib-cmd "get activity"
    Current Activity is Core Clock: 200MHZ
    Memory Clock: 200MHZ
    VDDC: 1250 <---- 3D powerstate!
    Activity: 0 percent
    Performance Level: 0
    Bus Speed: 5000
    Bus Lanes: 16
    Maximum Bus Lanes: 16
    ---

    This brings a little down the temps but not the power consumption nor the fan speed, mainly because the voltage stays at 1.25V (the card is still on its 3D powerstate). What I am doing here is changing the clocks but not the POWERPLAY powerstate, which is what I want, just the same way the card behaves under Windows.

    Trying to switch powerstates with aticonfig options (Catalyst 9.10) as I read in many sites (such as Ati unofficial wiki for linux 'http://wiki.cchtml.com/index.php/Configuring') seems to be useless (deprecated or just gone?):

    $ aticonfig --lsp
    aticonfig: unrecognized option '--lsp'
    aticonfig: parsing the command-line failed.
    ---
    $ aticonfig --list-powerstates
    aticonfig: unrecognized option '--list-powerstates'
    aticonfig: parsing the command-line failed.
    ---
    $ aticonfig --set-powerstate=1
    aticonfig: unrecognized option '--set-powerstate=1'
    aticonfig: parsing the command-line failed.
    ---

    As you can see, I am stuck in 3D state on Linux desktop, which makes the PC very noisy (even at 200/200 BUT 1.25V instead of 0.96V), and also wastes a lot of power. http://phoronix.com/forums/images/smilies/confused.gif

    So my question is, is there ANY way to make the card behave as in Windows, where POWERPLAY works flawlessly (that is, as SET in the graphics card bios!), I mean 2D clocks while in desktop, 3D clocks while running 3D app?

    Thanks in advance!

  • #2
    hello I wanted to know how to enable the fan of my 4870 x2 and solve the problem of temp 81 gradi .ciao Thank fabio

    Comment


    • #3
      good day, i have found a terminal command for the ati fanspeed that worked with my 1900xt and also with my sapphire 4870x2, i have been using this command since ubuntu 8.10 to controle my fanspeed, the command is:
      aticonfig --pplib-cmd "set fanspeed 0 55" , replace 55 with the desired fanspeed, to check the temp type in aticonfig ==ada[ter=0 ==od-gettemperature, i have made a script that starts up everytime i start my pc to run at 55 fanspeed, my card idles at 39-43 degrees and under load running savage 2 it runs at between 56 and 60 degrees, i can send you the script via email if you like, just pop me a mail, [email protected] with the subject, ati fanspeed how 2, hope this helps, the new 9.12 works very well in ubuntu 9.10, after running a game or some opengl stuff my card returns to the right idle temp where as before it would stay at the +- 60 degrees until i reboot ?

      Comment


      • #4
        Hello folks, I can confirm that this worked with my Sapphire 4870x2 card on KUbuntu 9.10 using the Catalyst 9.10. All I had to do is:
        % aticonfig --od-enable
        % aticonfig --adapter=0 --od-setclocks=200,200
        % aticonfig --pplib-cmd "set fanspeed 0 37"
        % aticonfig --od-commitclocks

        On next boot you have to re-enable the fanspeed, like nicobeukes suggested.

        To do a quick test (not an accurate test btw):
        % sudo apt-get install mesa-utils
        % glxinfo
        % glxgears

        My temperature is about 56-58 at idle with this settings and gets about 18500 FPS from glxgears.

        Comment


        • #5
          it is possable to write a script to run the fanspeed every time you login to ubuntu or kubuntu, here is what i did:
          go to a terminal window and go to your home dir,
          type the following:
          sudo gedit ati.sh and enter the following into the text editor:
          #!/bin/sh
          aticonfig --pplib-cmd "set fanspeed 0 40"
          save the file and make it executable:
          right click on the file you just made in your home folder and go to properties, go to the permissions tab and click the box next to execute that displays "allow executing file as program"
          Then go to the system/preferences menu and click on startup applications
          and add your file here.
          When this is done your ati card will autostart with a 40% fanspeed at every ubuntu/kubuntu startup.
          this worked for me since ubuntu 8.10 up until now,
          let me know if you manage to get this working, it took a while to learn this but google was a great help in make a autorun file http://phoronix.com/forums/images/smilies/smile.gif

          Comment


          • #6
            you can make the fan start up at any speed when you log in to x:
            go to a terminal window and go to your home dir:
            type in sudo gedit ati.sh and enter the following into the text editor:
            #!/bin/sh
            aticonfig --pplib-cmd "set fanspeed 0 40"
            and save the file. go to the file in your home dir and right click on the file and then click on permissions tab, click on the box next to execute that displays "allow executing file as program"
            then go to the system/preferences menu and click on startup applications and add your file here.
            it will now autorun the file when you log into x and run the fanspeed at 40% at every statup, hope this helps.
            very handy indeed,
            you can also run a superkaramba theme to display and adjust the speed for the ati card, here is the link for the themes:
            http://www.kde-look.org/content/show.php/?content=91918

            Comment


            • #7
              Hello all!
              I have HD4870, using Ubuntu 9.10 and the Catalyst 9.10
              but command aticonfig --adapter=0 --od-setclocks=200,200
              give me such rezult:
              ERROR - Set clocks failed for Adapter 0 - ATI Radeon HD 4800 Series
              Please check that input values were valid
              I think it is because I did'n modified BIOS, so quteion: is this range set in BIOS or it can change in some files or some other???

              Comment


              • #8
                Originally posted by Dovas View Post
                Hello all!
                I have HD4870, using Ubuntu 9.10 and the Catalyst 9.10
                but command aticonfig --adapter=0 --od-setclocks=200,200
                give me such rezult:
                ERROR - Set clocks failed for Adapter 0 - ATI Radeon HD 4800 Series
                Please check that input values were valid
                I think it is because I did'n modified BIOS, so quteion: is this range set in BIOS or it can change in some files or some other???
                I think it is out of range

                Comment

                Working...
                X