Bitcoin Forum
April 17, 2014, 04:19:57 PM *
News: Due to the OpenSSL heartbleed bug, changing your forum password is recommended.
 
   Home   Help Search Donate Login Register  
Pages: [1] 2 3 4 5 6  All
  Print  
Author Topic: New command-line tool for overclocking ATI cards (Linux)  (Read 27614 times)
mjmvisser
Jr. Member
*
Offline Offline

Activity: 58


View Profile

Ignore
July 03, 2011, 11:12:59 PM
 #1

Hi everyone,

I'm an experienced software developer who set up a mining rig last month using Ubuntu. I found the overclocking tool available for Linux (AMDOvDrvCtrl) was a bit annoying to use, so I took a look at the source and decided to write my own command-line version. Rather than write one in C or C++, I figured it would be much more useful to wrap the underlying libraries using Python's ctypes package so I could write the tool in Python. This means no compiling, no installing an SDK, and you can read the code yourself to make sure there's no funny business going on.

Anyway, I'm done and the tool is available. You can install it in a few different ways:

From github: https://github.com/mjmvisser/adl3
From PyPi: http://pypi.python.org/pypi/adl3/0.3
With Python's "easy_install": sudo easy_install adl3==0.3

If you don't use easy_install, you'll need to run "sudo python setup.py install" to install the package after you download and unpack it.

Included is the "atitweak" tool. It can list your adapters just like aticonfig:

Code:
$ atitweak -l
0. ATI Radeon HD 5800 Series  (:0.0)
    engine clock range is 80 - 918MHz
    memory clock range is 150 - 1200MHz
    core voltage range is 0.95 - 1.088VDC
    performance level 0: engine clock 800MHz, memory clock 300MHz, core voltage 0.95VDC
    performance level 1: engine clock 918MHz, memory clock 300MHz, core voltage 1.088VDC
    performance level 2: engine clock 918MHz, memory clock 300MHz, core voltage 1.088VDC
    fan speed range: 0 - 100%,  800 - 5100 RPM
1. ATI Radeon HD 5800 Series  (:0.1)
    engine clock range is 80 - 918MHz
    memory clock range is 150 - 1200MHz
    core voltage range is 0.95 - 1.088VDC
    performance level 0: engine clock 800MHz, memory clock 300MHz, core voltage 0.95VDC
    performance level 1: engine clock 918MHz, memory clock 300MHz, core voltage 1.088VDC
    performance level 2: engine clock 918MHz, memory clock 300MHz, core voltage 1.088VDC
   fan speed range: 0 - 100%,  800 - 5100 RPM

It can also change the engine/memory clock speed and core voltage individually for each performance level and adapter:

Code:
$ atitweak --set-memory-clock=300 --performance-level=2 --adapter=0
Setting performance level 2 on adapter 0: memory clock 300MHz

new! You can set your fan speed (in percent) for each adapter:

Code:
$ atitweak --set-fan-speed=100 --adapter=all

new! It will also show the current status of adapters:

Code:
$ atitweak --status --adapter=0

0. ATI Radeon HD 5800 Series  (:0.0)
    engine clock 950MHz, memory clock 300MHz, core voltage 1.088VDC, performance level 2, utilization 99%
    fan speed 100% (3447 RPM) (user-defined)
    temperature 85.5 C

Here's the full command-line help:

Code:
Usage: atitweak [options]

Options:
  -h, --help            show this help message and exit
  -l, --list-adapters   Lists all detected and supported display adapters.
  -s, --status          Shows current clock speeds, core voltage, utilization
                        and performance level.
  -e ENGINE_CLOCK, --set-engine-clock=ENGINE_CLOCK
                        Sets engine clock speed (in MHz) for the selected
                        performance levels on the selected adapters.
  -m MEMORY_CLOCK, --set-memory-clock=MEMORY_CLOCK
                        Sets memory clock speed (in MHz) for the selected
                        peformance levels on the selected adapters.
  -v CORE_VOLTAGE, --set-core-voltage=CORE_VOLTAGE
                        Sets core voltage level (in VDC) for the selected
                        performance levels on the selected adapters.
  -f FAN_SPEED, --set-fan-speed=FAN_SPEED
                        Sets the fan speed (in percent) for the selected
                        adapters.
  -d, --set-fan-speed-default
                        Resets the fan speed to its default setting.
  -A ADAPTERLIST, --adapter=ADAPTERLIST
                        Selects which adapters returned by --list-adapters
                        should be affected by other atitweak options.
                        ADAPTERLIST contains either a comma-seperated sequence
                        of the index numbers of the adapters to be affected or
                        else contains the keyword "all" to select all the
                        adapters. If --adapter is missing, all adapters will
                        be affected.
  -P PERFORMANCELEVELLIST, --performance-level=PERFORMANCELEVELLIST
                        Selects which performance levels returned by --list-
                        adapters should be affected by other atitweak options.
                        PERFORMANCELEVELLIST contains either a comma-separated
                        sequence of the index numbers of the performance
                        levels to be affected or else contains the keyword
                        "all" to select all performance levels. If
                        --performance-level is missing, all performance levels
                        will be affected.

So far, I've only tested this on my own rig (quad 5850s) so it would probably benefit from testing by experienced users.

UPDATE: I've verified that over/under-clocking outside of the BIOS range is possible with the Catalyst 11.6 drivers.

This should be obvious, but...
WARNING: This software may severely damage or destroy your graphics card if used incorrectly!

Please try it out, and let me know if you find any problems or bugs.

Donations welcome! 1Kh3DsAhiu65EC7DFFHDGoGowAp5usQrCG

cheers,
-Mark
GAWMiners.com
ASIC Scrypt Miners
Guaranteed Satisfaction + Same-Day Shipping For FREE!
Simply Enter "freeshipping" at checkout

Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1397751597
Hero Member
*
Offline Offline

Posts: 1397751597

View Profile Personal Message (Offline)

Ignore
1397751597
Reply with quote  #2

1397751597
Report to moderator
1397751597
Hero Member
*
Offline Offline

Posts: 1397751597

View Profile Personal Message (Offline)

Ignore
1397751597
Reply with quote  #2

1397751597
Report to moderator
1397751597
Hero Member
*
Offline Offline

Posts: 1397751597

View Profile Personal Message (Offline)

Ignore
1397751597
Reply with quote  #2

1397751597
Report to moderator
1397751597
Hero Member
*
Offline Offline

Posts: 1397751597

View Profile Personal Message (Offline)

Ignore
1397751597
Reply with quote  #2

1397751597
Report to moderator
kripz
Full Member
***
Offline Offline

Activity: 182



View Profile

Ignore
July 04, 2011, 12:10:28 AM
 #2

As far as im aware, the original AMDOverdriveCtrl cant actually raise the voltage above the default? Can this?

 Merged mining, free SMS notifications, PayPal payout and much more.
https://ip.bitcointalk.org/?u=http%3A%2F%2Fbtcstats.net%2Fsig%2FJZCODg2&t=539&c=qQh0KxZg52hWVA
mjmvisser
Jr. Member
*
Offline Offline

Activity: 58


View Profile

Ignore
July 04, 2011, 12:19:19 AM
 #3

As far as im aware, the original AMDOverdriveCtrl cant actually raise the voltage above the default? Can this?

I haven't tried, no desire to fry my cards.
Vladimir
Hero Member
*****
Offline Offline

Activity: 812


-


View Profile

Ignore
July 04, 2011, 12:30:48 AM
 #4

Great stuff, thank you. I was waiting for someone to do wrappers around that ADL lib (lazy I know). Will give it a try shortly, on a variety of cards. Thanks Again.

-
Rob P.
Member
**
Offline Offline

Activity: 84



View Profile WWW

Ignore
July 04, 2011, 11:38:07 AM
 #5

Looks good.  If it can actually change the voltage, then it solves a problem.

FWIW, the Catalyst 11.6 drivers allow you to over/underclock beyond the BIOS limitations already using aticonfig (these cards have never seen Windows or DOS):

Code:
Adapter 0 - ATI Radeon HD 5800 Series 
                            Core (MHz)    Memory (MHz)
           Current Clocks :    990           600
             Current Peak :    990           600
  Configurable Peak Range : [600-875]     [900-1200]
                 GPU load :    99%

Adapter 1 - ATI Radeon HD 5800 Series 
                            Core (MHz)    Memory (MHz)
           Current Clocks :    990           600
             Current Peak :    990           600
  Configurable Peak Range : [600-875]     [900-1200]
                 GPU load :    99%

Adapter 2 - ATI Radeon HD 5800 Series 
                            Core (MHz)    Memory (MHz)
           Current Clocks :    990           600
             Current Peak :    990           600
  Configurable Peak Range : [600-875]     [900-1200]
                 GPU load :    99%

--

If you like what I've written here, consider tipping the messenger:
1GZu4CtHa6ai8iWoWiVFxV5VVoNte4SkoG

If you don't like what I've written, send me a Tip and I'll stop talking.
kripz
Full Member
***
Offline Offline

Activity: 182



View Profile

Ignore
July 04, 2011, 12:00:33 PM
 #6

Looks good.  If it can actually change the voltage, then it solves a problem.

FWIW, the Catalyst 11.6 drivers allow you to over/underclock beyond the BIOS limitations already using aticonfig (these cards have never seen Windows or DOS):

So i can underclock my memory using aticonfig and not resorting to amdoverdrivectrl?

 Merged mining, free SMS notifications, PayPal payout and much more.
https://ip.bitcointalk.org/?u=http%3A%2F%2Fbtcstats.net%2Fsig%2FJZCODg2&t=539&c=qQh0KxZg52hWVA
teukon
Hero Member
*****
Offline Offline

Activity: 630



View Profile

Ignore
July 04, 2011, 02:20:19 PM
 #7

Looks good.  If it can actually change the voltage, then it solves a problem.

FWIW, the Catalyst 11.6 drivers allow you to over/underclock beyond the BIOS limitations already using aticonfig (these cards have never seen Windows or DOS):

So i can underclock my memory using aticonfig and not resorting to amdoverdrivectrl?

With Catalyst 11.6, yes.  I'm able to at least.

I only use AMDOverdriveCtrl for changing the voltage.
xarly1
Newbie
*
Offline Offline

Activity: 11


View Profile

Ignore
July 04, 2011, 02:51:15 PM
 #8

Anyone know how up voltage on linux, or unlock the stock voltage of a 5830 via flash?

Whit AMDOvDrvCtrl cant up more than stock on 5830 card.

Need up more than stock, same what i can do whit sapphire trixxx on windows.

thx  Wink
gyzer
Jr. Member
*
Offline Offline

Activity: 42


View Profile

Ignore
July 04, 2011, 04:09:57 PM
 #9

Will this allow me to get past 900Mhz on my XFX 5830 and 875Mhz on my Sapphire 5830? I'd love to get to about 950 on each card if possible.
mjmvisser
Jr. Member
*
Offline Offline

Activity: 58


View Profile

Ignore
July 04, 2011, 05:19:58 PM
 #10

Will this allow me to get past 900Mhz on my XFX 5830 and 875Mhz on my Sapphire 5830? I'd love to get to about 950 on each card if possible.

I just tried on my 5850 and it won't allow me to go beyond its maximum. atitweak uses the same method to tweak settings as AMDOvDrvCtrl, so you if can't overclock with that tool, you can't overclock with this one.
lebish
Newbie
*
Offline Offline

Activity: 28


View Profile WWW

Ignore
July 04, 2011, 06:46:29 PM
 #11

Woo, finally! Ty much, will be testing this soon ^.^

bitcoin://1N8v3K9JkNsMaffJZNzRmyUnwtuAxZv7Qa
namecoin://MwsunGebPhErL9fFPi3JLZqFZGJxfzV98b
Namecoin Us! (http://namecoin.us/)
Rob P.
Member
**
Offline Offline

Activity: 84



View Profile WWW

Ignore
July 05, 2011, 12:52:32 PM
 #12

Will this allow me to get past 900Mhz on my XFX 5830 and 875Mhz on my Sapphire 5830? I'd love to get to about 950 on each card if possible.

I use Catalyst 11.6 to drive my 5830s at 990/600 (308Mhash/sec).  These are Sapphire cards, your milage may vary on XFX.  This is at stock voltage.

The commands I use in my startup script are:

Code:
#Overclock GPU to 990Mhz
DISPLAY=:0 aticonfig --od-enable --adapter=all
DISPLAY=:0 aticonfig --od-setclocks=990,600 --adapter=${1}

Where $1 represents the adapter # of the GPU.

--

If you like what I've written here, consider tipping the messenger:
1GZu4CtHa6ai8iWoWiVFxV5VVoNte4SkoG

If you don't like what I've written, send me a Tip and I'll stop talking.
brunoshady
SCAMMER
Member
*****
Offline Offline

Activity: 98


View Profile

Ignore
July 08, 2011, 04:45:35 AM
 #13

mjmvisser:


works like a charm, but Í've seen some strange bug...

when trying to overvolt the stock voltage (from 1.088 (stock) to 1.150), I get failed (obvius) and then the my miner rate just drops and with list it shows the voltage at 1.150
mjmvisser
Jr. Member
*
Offline Offline

Activity: 58


View Profile

Ignore
July 11, 2011, 09:18:02 PM
 #14

works like a charm, but Í've seen some strange bug...

when trying to overvolt the stock voltage (from 1.088 (stock) to 1.150), I get failed (obvius) and then the my miner rate just drops and with list it shows the voltage at 1.150

Do you get the same result with AMDOvDrvCtrl?
padrino
Sr. Member
****
Offline Offline

Activity: 434


View Profile

Ignore
July 11, 2011, 11:27:44 PM
 #15

Without writing to the i2c interface on the various cards (see radeonvolt for Linux tool) you cannot jump above the BIOS limits, I like how easy this tool is to use, grab the radeonvolt code for reference and merge the two and there is a good path towards a tool getting closer to those available on Windows.

Donations always welcome 1CPi7VRihoF396gyYYcs2AdTEF8KQG2BCR
brunoshady
SCAMMER
Member
*****
Offline Offline

Activity: 98


View Profile

Ignore
July 12, 2011, 02:37:31 AM
 #16

works like a charm, but Í've seen some strange bug...

when trying to overvolt the stock voltage (from 1.088 (stock) to 1.150), I get failed (obvius) and then the my miner rate just drops and with list it shows the voltage at 1.150

Do you get the same result with AMDOvDrvCtrl?

can't overvolt in AMDOverdriveCtrl...


that's why it's strange
linkme
Member
**
Offline Offline

Activity: 98


View Profile

Ignore
July 12, 2011, 02:41:17 AM
 #17

giving it a go will let you know my results after a couple of days to see how it goes.

kudos on getting it done Smiley

Tips in moon or sun Smiley
MOON: 2Jw7MyybsQuGmu5ryXLDUHFh1K7vZvuYFX  SUN: SMYNggLsTQo8fgVbjZy7fMbdrEEzt4XFtC
dishwara
Hero Member
*****
Offline Offline

Activity: 1162


Truth may get delay, but NEVER fails


View Profile

Ignore
July 12, 2011, 05:41:27 PM
 #18

Quote
If you don't use easy_install, you'll need to run "python setup.py install" to install the package.

I downloaded the adl3**.tar.gz & extracted it. Then cd to that folder & ran sudo easy_install adl3 & it said easy_install not found.
So, i run "python setup.py install" , which gave permission denied error.
So, i run
Code:
sudo python setup.py install
which installed correctly. Please edit with "sudo", so noobie's like me do correctly.
Thanks.
marcus_of_augustus
Hero Member
*****
Offline Offline

Activity: 1134



View Profile

Ignore
July 12, 2011, 10:12:43 PM
 #19


Good stuff mjmvisser ... !

Monetary Freedom - a basic human right
"Disarming money as a tool for tyranny."
"Disintermediating the State."
coblee
Donator
Hero Member
*
Offline Offline

Activity: 826


firstbits.com/1ce5j


View Profile WWW

Ignore
July 12, 2011, 10:22:36 PM
 #20


Good stuff mjmvisser ... !

Yeah, seriously good stuff. Do you have a donation address?

Litecoin: http://litecoin.org - LhK2kQwiaAvhjWY799cZvMyYwnQAcxkarr
Casascius physical bitcoins database: http://casascius.appspot.com/
Pages: [1] 2 3 4 5 6  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!