New Posts  All Forums:Forum Nav:

ATI OverDrive5

post #1 of 40
Thread Starter 
Command line tool that uses AMD ADL OverDrive5 interface to control power and fan speed of their GPU boards - http://code.google.com/p/overdrive5/
post #2 of 40
doesn't seem particularity useful.

perhaps some more instructions would be helpful.

if it had voltage control on the other hand....
Edited by The Mac - 12/11/12 at 6:52am
post #3 of 40
Thread Starter 
Code:
This tool uses the same ATI OverDrive API which is used in CCC to control GPU clocks,
voltage and fan speed. I think it is little known that the description of this API
could be found in AMD ADL_SDK.

Examples:

>overdrive5.exe -h
Overdrive5 v1.0 - ATI/AMD ADL OverDrive5 Tool
Usage: overdrive5.exe [options]
Options:
        -h                      - help
        -l                      - list adapters and thermal controllers
        -a <n>                  - use adapter <n>
        -c <n>                  - use thermal controller <n>
        -f                      - get fan speed
        -F <n>                  - set fan speed to <n> %
        -J <n>                  - set fan speed to <n> RPM
        -g <n>                  - monitor fan speed for <n> seconds
        -G                      - set default fan speed
        -q                      - get performance levels
        -Q                      - get default performance levels
        -A                      - get current activity
        -p <clk/mem/vddc>       - add a performance level
        -P                      - set the performance levels
        -D                      - set default performance levels
        -t                      - get the temperature
        -T <n>                  - monitor the temperature for <n> seconds
        -w                      - get power control info.
        -W <n>                  - set power control value
        -v <n>                  - set verbosity level to <n>

# to get current activity and performance levels 
>overdrive5.exe -AqQ
Current Activity:
        Engine Clock       = 282.36 MHz
        Memory Clock       = 667.00 MHz
        Vddc               = 1.000 V
        Activity           = 0%
        Performance Level  = 0
        Bus Speed          = 2.50 GT/s
        Bus Lanes          = 16/16
Overdrive parameters:
        Number of Performance Levels = 2
        Activity Reporting Supported = Yes
        Discrete Performance Levels  = Yes
        Engine Clock =  282.36 -  600.00 step   5.00 MHz
        Memory Clock =  667.00 -  667.00 step   5.00 MHz
        Vddc         =   1.000 -   1.113 step   0.050 V
Performance level 0:
        Engine Clock = 282.36 MHz
        Memory Clock = 667.00 MHz
        Vddc         = 1.000 V
Performance level 1:
        Engine Clock = 600.00 MHz
        Memory Clock = 667.00 MHz
        Vddc         = 1.113 V
Overdrive parameters:
        Number of Performance Levels = 2
        Activity Reporting Supported = Yes
        Discrete Performance Levels  = Yes
        Engine Clock =  282.36 -  600.00 step   5.00 MHz
        Memory Clock =  667.00 -  667.00 step   5.00 MHz
        Vddc         =   1.000 -   1.113 step   0.050 V
Performance level 0:
        Engine Clock = 282.36 MHz
        Memory Clock = 667.00 MHz
        Vddc         = 1.000 V
Performance level 1:
        Engine Clock = 600.00 MHz
        Memory Clock = 667.00 MHz
        Vddc         = 1.113 V

# It is the same information that GPU Shark tool shows.

# to set new engine clock to 300 MHz for performance level 0:
>overdrive5.exe -p 300/600/1.0 -p 600/667/1.113 -P

# to get fan speed and temperature
>overdrive5.exe -ft


Performance level it is a particular Engine/Memory clock and Voltage set.
ATI GPU have several of them (2-3): 0-Idle state, 1-Video decoding, 2-3D/Gaming state.

"Overdrive parameters" shows number of such levels (you cannot change this number):
        Number of Performance Levels = 2

 and clock/voltage ranges (you should not set parameters out of ranges) and step:
        Engine Clock =  282.36 -  600.00 step   5.00 MHz
        Memory Clock =  667.00 -  667.00 step   5.00 MHz
        Vddc         =   1.000 -   1.113 step   0.050 V

"Current Activity" shows current clocks and performance level.

You can make a set of batch files that configure your board for a particular purpose
with one click instead of dragging controls in CCC or other GUI tool.

And what is important this tool have source code available :)

Edited by vant - 12/11/12 at 12:47pm
post #4 of 40
now THAT is helpful...

pretty cool......

so what command would i use to set vddc to say 1.25v?
post #5 of 40
Thread Starter 
for this particular example with two performance levels (PL) (you have to set parameters for all performance levels):
overdrive5.exe -p 300/600/1.0 -p 600/667/1.25 -P

if your board have three PL then something like this:
overdrive5.exe -p 150/300/1.0 -p 600/900/1.112 -p 850/1200/1.25 -P

you can set this voltage for a lower PL but it doesn't make much sense smile.gif

to return the default performance settings:
overdrive5.exe -D
post #6 of 40
hmmm...im gonna have to try this out.

would be great to run a script to set up my OCs when windows boots so i dont have to mess with 3rd party tools...

if you change one of the profiles, you have to restate all of them?

are there any limits to the range of clocks/voltages you can use in the profiles like with CCC?
Edited by The Mac - 12/11/12 at 9:44am
post #7 of 40
Thread Starter 
Code:
>overdrive5.exe -q

Overdrive parameters:
        Number of Performance Levels = 2
        Activity Reporting Supported = Yes
        Discrete Performance Levels  = Yes
        Engine Clock =  282.36 -  600.00 step   5.00 MHz
        Memory Clock =  667.00 -  667.00 step   5.00 MHz
        Vddc         =   1.000 -   1.113 step   0.050 V
. . .

these are allowed ranges:
Engine Clock = 282.36 - 600.00 MHz
Memory Clock = 667.00 - 667.00 MHz
Vddc         = 1.000 - 1.113 V

post #8 of 40
ah, i see so the -q will specifically state the ranges for my card.
post #9 of 40
is there anyway to increase the max ranges?

if you only want to change one of the profiles (say the highest, for 3d), do you have to restate all of them?
Edited by The Mac - 12/11/12 at 10:03am
post #10 of 40
Thread Starter 
No, you cannot change the ranges. My guess is the driver takes them from video bios so you have to change F/W in the board with some tool like Radeon Bios Editor (rabit) but I doubt it can do this. And it could be very dangerous.

Yes, you have to restate all of them. It is not my whim but the API works this way - you get and set an array of states, cannot say "I want to change state N". But I can add an option to change only the last state wink.gif
New Posts  All Forums:Forum Nav:
  Return Home