# [HOWTO] ATI Radeon overclocking

## Hasw

Because I haven't found a program to overclock my Radeon 9700 I've written one to do this. It's in an early, experimental stage, but

it's working on my 9700 and a 9500 Pro without problems.

First get the current version from http://www.hasw.net/linux, extract and compile it:

```

hasw@hasw hasw $ tar jxvf rovclock-0.1a.tar.bz2 

rovclock-0.1a/

rovclock-0.1a/rovclock.c

rovclock-0.1a/radeon.h

rovclock-0.1a/pci.h

rovclock-0.1a/Makefile

rovclock-0.1a/rovclock

rovclock-0.1a/README

rovclock-0.1a/COPYING

hasw@hasw hasw $ cd rovclock-0.1a

hasw@hasw rovclock-0.1a $ make

gcc -O2 -Wall -Wstrict-prototypes  -o rovclock rovclock.c

hasw@hasw rovclock-0.1a $ 

```

Because there's currently no code to detect the Xtal frequency, it's possible to specify it manually.

First try to check if the core and memory frequency are correctly calculated:

```

hasw@hasw rovclock-0.1a $ sudo ./rovclock -i

Radeon overclock 0.1a by Hasw (hasw@hasw.net)

Found ATI card, device id: 0x4e44

I/O base address: 0x9000

Xtal: 27.0 MHz

Core: 283.50 MHz, Mem: 290.25 MHz, RefDiv: 12

hasw@hasw rovclock-0.1a $ 

```

If the default Xtal frequency of 27 MHz does not lead to a correctly calculated core and memory frequency, 

you can specify another (in kHz), try 1432 or 2950:

```

hasw@hasw rovclock-0.1a $ sudo ./rovclock -x 2950 -i

Radeon overclock 0.1a by Hasw (hasw@hasw.net)

Found ATI card, device id: 0x4e44

I/O base address: 0x9000

Xtal: 29.50 MHz

Core: 309.75 MHz, Mem: 317.13 MHz, RefDiv: 12

hasw@hasw rovclock-0.1a $ 

```

Setting a new core and memory frequency is simple (don't forget the -x option if you need it):

```

hasw@hasw rovclock-0.1a $ sudo ./rovclock -c 360 -m 300

Radeon overclock 0.1a by Hasw (hasw@hasw.net)

Found ATI card, device id: 0x4e44

I/O base address: 0x9000

Xtal: 27.0 MHz

Core: 357.75 MHz, Mem: 297.0 MHz, RefDiv: 12

hasw@hasw rovclock-0.1a $ 

```

You can use glxgears to measure the difference (restart it between the changes, otherwise it takes a while until the new FPS is calculated).

Don't set the memory below 200 MHz otherwise it's possible that you get screen corruptions (at least on my card).

----------

## GhePeU

it works with my radeon 7500 too

```
KazeNoTani rovclock-0.1a # lspci -v

0000:01:00.0 VGA compatible controller: ATI Technologies Inc Radeon RV200 QW [Radeon 7500] (prog-if 00 [VGA])

        Subsystem: ATI Technologies Inc Radeon 7500

        Flags: bus master, stepping, 66Mhz, medium devsel, latency 32, IRQ 16

        Memory at d0000000 (32-bit, prefetchable) [size=dfec0000]

        I/O ports at a800 [size=256]

        Memory at dfef0000 (32-bit, non-prefetchable) [size=64K]

        Expansion ROM at 00020000 [disabled]

        Capabilities: [58] AGP version 2.0

        Capabilities: [50] Power Management version 2
```

```
KazeNoTani rovclock-0.1a # ./rovclock -i

Radeon overclock 0.1a by Hasw (hasw@hasw.net)

Found ATI card, device id: 0x5157

I/O base address: 0xa000

Xtal: 27.0 MHz

Core: 290.25 MHz, Mem: 229.50 MHz, RefDiv: 12

KazeNoTani rovclock-0.1a # glxgears

9431 frames in 5.0 seconds = 1886.017 FPS

9467 frames in 5.0 seconds = 1893.247 FPS

9465 frames in 5.0 seconds = 1892.815 FPS

9467 frames in 5.0 seconds = 1893.291 FPS
```

```
KazeNoTani rovclock-0.1a # ./rovclock -c 320 -m 260

Radeon overclock 0.1a by Hasw (hasw@hasw.net)

Found ATI card, device id: 0x5157

I/O base address: 0xa000

Xtal: 27.0 MHz

Core: 319.50 MHz, Mem: 261.0 MHz, RefDiv: 12

KazeNoTani rovclock-0.1a # glxgears

10649 frames in 5.0 seconds = 2129.773 FPS

10584 frames in 5.0 seconds = 2116.624 FPS

10602 frames in 5.0 seconds = 2120.344 FPS

10610 frames in 5.0 seconds = 2121.926 FPS
```

```
KazeNoTani rovclock-0.1a # ./rovclock -c 170 -m 150

Radeon overclock 0.1a by Hasw (hasw@hasw.net)

Found ATI card, device id: 0x5157

I/O base address: 0xa000

Xtal: 27.0 MHz

Core: 171.0 MHz, Mem: 150.75 MHz, RefDiv: 12

KazeNoTani rovclock-0.1a # glxgears

5901 frames in 5.0 seconds = 1180.152 FPS

5886 frames in 5.0 seconds = 1177.168 FPS

5877 frames in 5.0 seconds = 1175.208 FPS

5889 frames in 5.0 seconds = 1177.389 FPS
```

----------

## Hasw

 *GhePeU wrote:*   

> it works with my radeon 7500 too
> 
> 

 

Good  :Smile:  It should work upwards from chip versions R100/RV100. 

I updated to version 0.2a which gets the reference clock from video BIOS.

----------

## NewBlackDak

Are you going to do a gui frontend for it, or leave that to the rest of us?

----------

## Hasw

Yes, a small GTK interface with core/memory frequency and RAM timings, profiles for games/programs and maybe some test pattern generator to detect errors.

----------

## riven

Sweet dude.

I can confirm its working on my Saphire Radeon 9000

Default: Core: 249.75 MHz, Mem: 200.25 MHz

glxgears: 9059 frames in 5.0 seconds = 1811.800 FPS

9045 frames in 5.0 seconds = 1809.000 FPS

9053 frames in 5.0 seconds = 1810.600 FPS

8920 frames in 5.0 seconds = 1784.000 FPS

OC: Core: 261.0 MHz, Mem: 220.50 MHz

glxgears: 9892 frames in 5.0 seconds = 1978.400 FPS

9891 frames in 5.0 seconds = 1978.200 FPS

9893 frames in 5.0 seconds = 1978.600 FPS

9891 frames in 5.0 seconds = 1978.200 FPS

I'll try playing UT2003 on the OC settings.

----------

## riven

Got a stable OC of 270/230. a little higher gave me corruption in UT2003. Definate increase in FPS.

Brilliant program mate.  :Very Happy: 

----------

## DualCpuUser

I threw it in my local.start for my 9600 AIW.

----------

## ericxx2005

No go on a radeon 9500 pro.  Says 'No ATI card found.'

lspci detects my card as a 9700 Pro.

Any workarounds?

----------

## Hasw

Yes, currently only the second and third PCI bus is checked for a AGP device. Can you please post the lspci output (the section with the 9700)? I'll then fix the detection routine to search for more busses.

----------

## ericxx2005

```
0000:03:00.0 VGA compatible controller: ATI Technologies Inc Radeon R300 ND [Radeon 9700 Pro] (prog-if 00 [VGA])

   Subsystem: ATI Technologies Inc: Unknown device 0002

   Flags: bus master, stepping, 66Mhz, medium devsel, latency 255, IRQ 5

   Memory at d0000000 (32-bit, prefetchable)

   I/O ports at d000 [size=256]

   Memory at e5000000 (32-bit, non-prefetchable) [size=64K]

   Capabilities: [58] AGP version 3.0

   Capabilities: [50] Power Management version 2

0000:03:00.1 Display controller: ATI Technologies Inc Radeon R300 [Radeon 9700 Pro] (Secondary)

   Subsystem: ATI Technologies Inc: Unknown device 0003

   Flags: stepping, 66Mhz, medium devsel

   Memory at d8000000 (32-bit, prefetchable) [disabled]

   Memory at e5010000 (32-bit, non-prefetchable) [disabled] [size=64K]

   Capabilities: [50] Power Management version 2

```

Hope that helps.  If I remember right, I needed to flash the BIOS with a different one to get overclocking to work for this card.

----------

## Hasw

Ok, it's on bus 3. I updated the program (0.4a) to search from bus 1 to 9, should work now.

----------

## lego86

Great piece of software. More FPS in ET;) It would be great if you would make an ebuild.

----------

## stupidfool

Same problem as ericxx

A 9500Pro with a moddet bios

rovclock-0.4a could not detect the card

```
 Bus  3, device   0, function  0:

    VGA compatible controller: ATI Technologies Inc Radeon R300 ND [Radeon 9700 Pro] (rev 0).

      IRQ 5.

      Master Capable.  Latency=255.  Min Gnt=8.

      Prefetchable 32 bit memory at 0xc0000000 [0xc7ffffff].

      I/O at 0xd000 [0xd0ff].

      Non-prefetchable 32 bit memory at 0xd6000000 [0xd600ffff].

  Bus  3, device   0, function  1:

    Display controller: ATI Technologies Inc Radeon R300 [Radeon 9700 Pro] (Secondary) (rev 0).

      Master Capable.  Latency=32.  Min Gnt=8.

      Prefetchable 32 bit memory at 0xc8000000 [0xcfffffff].

      Non-prefetchable 32 bit memory at 0xd6010000 [0xd601ffff].
```

----------

## Hasw

Sorry, found the bug. Has only searched bus 1...

Version 0.4b available: http://www.hasw.net/linux/rovclock-0.4b.tar.bz2

----------

## stupidfool

Oh wow  :Very Happy:  This was fast

Thanx great job. works now  :Razz: 

----------

## ericxx2005

Still no go, same error.  Thanks for the quick update and updating your program for me though:D

update:  sorry, didn't see 4b, I'll give it a try.

----------

## ericxx2005

It works!  Thank a lot!  brought it up from 276 270 to 310 305 with ~300 fps increase in glxgears!  I'm going to bring it up some more and report back.

----------

## Hasw

Mostly RAM on this cards are more limitated than the GPU. On my card the RAM goes from 280 up to 310, the GPU up to 380. When I increase the voltage, it reaches 440/350  :Smile: 

----------

## racoontje

/me kindly asks for an ebuild

----------

## Hasw

 *racoontje wrote:*   

> /me kindly asks for an ebuild

 

Have never written one before. I'll try it this afternoon, have to read the howtos first  :Wink: 

----------

## ericxx2005

Hasw, is that after volt-modding the card, or did you just change the AGP bus voltage in the BIOS?  I haven't tried raising the voltage, since everywhere I read online it said that it made no difference.  My RAM tops out around 310 and gets major artifacts and needs a reboot.  The GPU can go up to 350-360 though. :Wink: 

----------

## Hasw

After hardware-modding the card. I don't think that increasing the AGP bus voltage helps a bit in this case. Maybe if you overclock the AGP bus, but not when overclocking the GPU core.

----------

## mirko_3

Nah, AGP voltage does 2 things:

1-Increase chipset voltage

2-Increase AGP voltage (of course)

Both only help you reach very high FSB speeds (like in my case, where I have 180FSB on a 133 board).

----------

## ericxx2005

That's what I thought.  I remember a good howto for volt-modding a 9500 Pro a while back (1-2 yrs.), anyone have the link?  My soldiering skills are not the greatest, but I fixed my wireless usb card after having the usb part ripped off from it:P 

Would I see significant improvements (~ 400 core/350 mem) without major cooling necessities?  If not, I will just stick to what I have untill I go the PCI-express route.

I gotta say though, this card still rocks!

----------

## mirko_3

As long as you know the risks, and don't overvolt too much...

I'm assuming you want to overvolt the gpu...

http://www.ocforums.com/showthread.php?t=326518&highlight=9500+volt+mod

I only gave it a cursory look, if you don't find what you need there, you may search the forums (I believe those forums are a gold mine for any overclocker...) or PM Hell-Fire -XS- (on overockers' forums, not these of course) as he seems to know everything about voltmodding ATIs...

Also, improved cooling would be better...

----------

## TheRealElch

Great work!

Sadly no go on my Ati Radeon 9700 pro too  :Sad: 

I'v tested up to version 0.4b but it gives me always "No ATI card found."

Here is my lspci -v output

```

0000:01:05.0 VGA compatible controller: ATI Technologies Inc Radeon R300 ND [Rad eon 9700 Pro] (prog-if 00 [VGA])

        Subsystem: ATI Technologies Inc: Unknown device 0002

        Flags: bus master, stepping, 66Mhz, medium devsel, latency 255, IRQ 17

        Memory at e0000000 (32-bit, prefetchable)

        I/O ports at b000 [size=256]

        Memory at f1000000 (32-bit, non-prefetchable) [size=64K]

        Capabilities: [58] AGP version 2.0

        Capabilities: [50] Power Management version 2

0000:01:05.1 Display controller: ATI Technologies Inc Radeon R300 [Radeon 9700 P ro] (Secondary)

        Subsystem: ATI Technologies Inc: Unknown device 0003

        Flags: stepping, 66Mhz, medium devsel

        Memory at e8000000 (32-bit, prefetchable) [disabled]

        Memory at f1010000 (32-bit, non-prefetchable) [disabled] [size=64K]

        Capabilities: [50] Power Management version 2

```

----------

## Hasw

@TheRealElch: I know why, because it's the 6th device (currently it only checks the usual first device on the AGP bus). What board/card do you have? 

EDIT: I updated to version 0.5a, which uses the information from /proc/bus/pci/devices. This should work better.

 *mirko_3 wrote:*   

> Nah, AGP voltage does 2 things:
> 
> 1-Increase chipset voltage
> 
> 2-Increase AGP voltage (of course)
> ...

 

I think 1 depends on the mainboard layout/chipset. On my nForce2 board the AGP voltage is controlled differently from chipset core voltage. AGP voltage increases there only the voltage of the AGP I/O buffers.

----------

## TheRealElch

Using version 0.5a works, but it only detects the card. When calculating the clocks it throws out a "Gleitkomma-Ausnahme"

Here is my output:

```

Radeon overclock 0.5a by Hasw (hasw@hasw.net)

Found ATI card on 01:28, device id: 0x4e44

I/O base address: 0xfffffffc

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Gleitkomma-Ausnahme

```

I also tried the -x option with 1432 and 2970 as parameters - no go  :Sad: 

My Hardware:

Chaintech 7KDD AMD MPX760 Chipset

His Ati Radeon 9700PRO 128MB

```

0000:00:00.0 Host bridge: Advanced Micro Devices [AMD] AMD-760 MP [IGD4-2P] System Controller (rev 11)

        Flags: bus master, 66Mhz, medium devsel, latency 32

        Memory at d0000000 (32-bit, prefetchable)

        Memory at f4000000 (32-bit, prefetchable) [size=4K]

        I/O ports at c000 [disabled] [size=4]

        Capabilities: [a0] AGP version 2.0

0000:00:01.0 PCI bridge: Advanced Micro Devices [AMD] AMD-760 MP [IGD4-2P] AGP Bridge (prog-if 00 [Normal decode])

        Flags: bus master, 66Mhz, medium devsel, latency 32

        Bus: primary=00, secondary=01, subordinate=01, sec-latency=32

        I/O behind bridge: 0000b000-0000bfff

        Memory behind bridge: f0000000-f1ffffff

        Prefetchable memory behind bridge: e0000000-efffffff

        Expansion ROM at 0000b000 [disabled] [size=4K]

```

----------

## oggialli

Thank you ! My Mobility FireGL T2 in my laptop went nicely from 307/200 to a whopping 480/230 ! Which gave an insane performance boost in UT2004.

----------

## Hasw

 *TheRealElch wrote:*   

> Using version 0.5a works, but it only detects the card. When calculating the clocks it throws out a "Gleitkomma-Ausnahme"
> 
> Here is my output:
> 
> ```
> ...

 

It doesn't detect the right PCI device, 01:28 should be 01:05. So the I/O base address isn't correct and the calculation failed. Can you please send me a copy of /proc/bus/pci/devices to hasw@hasw.net, so I can check why it fails?

----------

## Hasw

Update: There's now an ebuild available: http://www.hasw.net/linux/rovclock-0.5b.ebuildLast edited by Hasw on Thu Jun 16, 2005 6:43 am; edited 1 time in total

----------

## bgradid

Thank you! that worked perfectly with my radeon 9100

----------

## Hasw

I've now added some memory timings in version 0.6a. Use with care, better login via ssh to make changes because it's possible that it corrupts your screen.

http://www.hasw.net/linux/rovclock-0.6a.ebuild

http://www.hasw.net/linux/rovclock-0.6a.tar.bz2

----------

## ericxx2005

 *Quote:*   

> I've now added some memory timings in version 0.6a. Use with care, better login via ssh to make changes because it's possible that it corrupts your screen. 

 

I can't seem to find any timings that don't cause corruption, have you had any luck?

However, this seems interesting, I've never heard of changing memory timings on video cards.  I am very interested in helping you develop this, but have very little experience programming. :Crying or Very sad:  Let me know if there's anything that I can do to help.

----------

## Hasw

I can change tWR and tCAS one unit down, other changes doesn't work. There are many other timings which maybe working better to change. 

I'll add them if I've found out where they are stored.

----------

## Hasw

Now added more memory timings: http://www.hasw.net/linux/rovclock-0.6b.ebuild.

```

hasw@hasw ~ $ sudo /usr/sbin/rovclock -i

Radeon overclock 0.6b by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x4e44

I/O base address: 0x9000

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Memory size: 131072 kB

Memory channels: 1, CD,CH only: 1

tRcdRD:   6

tRcdWR:   3

tRP:      7

tRAS:     11

tRRD:     4

tR2W-CL:  3

tWR:      3

tW2R:     2

tW2Rsb:   1

tR2R:     2

tRFC:     20

tWL(0.5): 2

tCAS:     4

tCMD:     0

tSTR:     1

XTAL: 27.0 MHz, RefDiv: 12

Core: 276.75 MHz, Mem: 270.0 MHz

```

You can set multiple memory timings at once, for example:

```

rovclock -t tRcdRD:5 -t tRcdWR:2

```

----------

## ericxx2005

Works like a charm here!  Between o/c'ing and timings (which now work for me) I went from ~450 fps to ~600 in fgl_glxgears.  That's a 33% increase!  Now we don't have to worry about ati driver speed improvements, just o/c like hell. :Razz: 

Keep up the good work Hasw.  You should post this on rage3d.com, as they would be interested as well.

----------

## WareKala

I've been looking for some good Linux app to overclock my Radeon card...It's an integrated piece of ****, and AFAIK I can't adjust memory timings at all as it shares the system memory. But I should be able to adjust core speed. Well, the problem is that I get en error like:

Radeon overclock 0.6b by Hasw (hasw@hasw.net)

Found ATI card on 00:00, device id: 0xcab2

I/O space not enabled, aborting.

What's wrong, and what to do about it?

----------

## Hasw

Can you please send me the output of 'lspci -vv' (PM or hasw@hasw.net)?

----------

## WareKala

I just took a look at rovclock's sources and noticed that it just checks if the vendor id is ATI's and that's why it fails for me. The first device listed by lspci is an AGP bridge, with ATI as the vendor, then comes PCI bridge also made by ATI. It's the last device listed by lspci which is my Radeon card. So, perhaps rovclock should also check the device class if it matches 0300?

----------

## Hasw

Yes, already did it  :Smile:   The detection routines are only a quick hack until I have more time to write something better.

http://www.hasw.net/linux/rovclock-0.6c.ebuild

http://www.hasw.net/linux/rovclock-0.6c.tar.bz2

----------

## WareKala

I apparently can now change the core speed successfully. Thank you for good job  :Smile:  Only one complaint: rovclock still says it's version 0.6b  :Wink: 

----------

## Hasw

 *WareKala wrote:*   

> Only one complaint: rovclock still says it's version 0.6b 

 

Ups, should release a new version to fix this?  :Very Happy: 

----------

## hypnotic

Hasw,

Thanks for the tool. Here's some feedback. I'm running a Mobility 9700 Pro. I don't intend to actually overclock this GPU, so I can't report whether rovclock works in that regard or not.

I think rovclock is reporting an incorrect memory clock on my machine. According to my research, my specific machine should be clocked at 405 core/270 mem. And more generally, all Mobility 9700 memory clocks should be between 200-275 (400-520 effective). rovclock reports the seemingly correct 405 core speed, but it reports my memory clock at 438.75. So, is 438MHz my effective rate (ie, my clock is actually about 220)? Or is it simply incorrect?

```

Found ATI card on 01:00, device id: 0x4e50

I/O base address: 0x3000

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Memory size: 262144 kB

Memory channels: 1, CD,CH only: 0

tRcdRD:   4

tRcdWR:   2

tRP:      4

tRAS:     9

tRRD:     3

tR2W-CL:  3

tWR:      3

tW2R:     3

tW2Rsb:   1

tR2R:     2

tRFC:     17

tWL(0.5): 2

tCAS:     4

tCMD:     0

tSTR:     1

XTAL: 27.0 MHz, RefDiv: 6

Core: 405.0 MHz, Mem: 438.75 MHz

```

----------

## splaq

I was bored wanted more out of my 9800 pro..so this is what i got...

```

glxgears

Default: Core: 378.0 MHz, Mem: 337.50 MHz

22073 frames in 5.0 seconds = 4414.600 FPS

22223 frames in 5.0 seconds = 4444.600 FPS

22216 frames in 5.0 seconds = 4443.200 FPS

OC: Core: 425.25 MHz, Mem: 378.0 MHz

24516 frames in 5.0 seconds = 4903.200 FPS

24883 frames in 5.0 seconds = 4976.600 FPS

24896 frames in 5.0 seconds = 4979.200 FPS

trying for 5000+ fps

Core: 438.75 MHz, Mem: 391.50 MHz

25715 frames in 5.0 seconds = 5143.000 FPS

25726 frames in 5.0 seconds = 5145.200 FPS

25717 frames in 5.0 seconds = 5143.400 FPS

fgl_glxgears

Default: Core: 378.0 MHz, Mem: 337.50 MHz

4164 frames in 5.0 seconds = 832.800 FPS

4310 frames in 5.0 seconds = 862.000 FPS

4331 frames in 5.0 seconds = 866.200 FPS

OC: Core: 425.25 MHz, Mem: 378.0 MHz

4734 frames in 5.0 seconds = 946.800 FPS

4780 frames in 5.0 seconds = 956.000 FPS

4763 frames in 5.0 seconds = 952.600 FPS

trying for 1000+

Core: 438.75 MHz, Mem: 391.50 MHz

4900 frames in 5.0 seconds = 980.000 FPS

4902 frames in 5.0 seconds = 980.400 FPS

4908 frames in 5.0 seconds = 981.600 FPS

```

never made the 1000 mark with fgl_glxgears...but did get close with i think 991...then the system froze  :Razz:  go figure heh..btw..this works with the 9800 pro's also incase you missed that portion at the beginning

----------

## AndreAPL

great work  :Shocked: 

rocking here with 9800se  :Very Happy: 

thanks  :Cool: 

P.S. anything about softmod's in linux ?  :Rolling Eyes: 

----------

## BetterUnborn

First of all: THX THX THX

I can confirm it works with X600 Mobility, too!

I really missed a tool like that!

I don't need it for overclocking, I just underclock my X600Mobility ... from 390/250 to 80/80!

While on (2D) desktop I can see no difference at all, and heat reduces significantly. In windows manual underclocking gave me about 30min of extra battery time, I have to figure out what benefit I get here, but it should be close to that! Why take a laptop with intel integrated graphics, when you can save that much power with an ati chip and still have the graphics power when you need it??

But one interesting effect occured: in windows, I use atitool, which allows me to underclock downto 50/50 with no mad effects at all; if I set frequencies to 50/50 with rovclock, the display turns to a flickering grey (my desktop in a VERY distorted view), up to 80/80 this is gone step by step. So why can I do more underclocking in windows?? Do I have to fine-tune the memory parameters, too?? btw, the flickering is also there when I only underclock the core OR the memory below 80.

----------

## shimbob

Out of curiousity, will underclocking let the chips run cooler?

Two of my machines (an SMP Athlon-MP and a P4-3ghz stuffed into a Pundit-R case) put out a ton of heat. Vast majority of the time I'm not gaming or anything requiring fast video. Heck, the pundit is a headless machine, '-c 20' seems to run okay.

Also, I get this quirk on the Pundit-R

```

zlab rovclock-0.6c # ./rovclock  -i

Radeon overclock 0.6b by Hasw (hasw@hasw.net)

Found ATI card on 01:05, device id: 0x5834

I/O base address: 0xd000

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 14.32 MHz

Memory size: 31744 kB

Memory channels: 3, CD,CH only: 0

tRcdRD:   5

tRcdWR:   8

tRP:      8

tRAS:     18

tRRD:     3

tR2W-CL:  2

tWR:      1

tW2R:     3

tW2Rsb:   0

tR2R:     2

tRFC:     13

tWL(0.5): 0

tCAS:     6

tCMD:     0

tSTR:     0

XTAL: 14.32 MHz, RefDiv: 6

Core: 300.72 MHz, Mem: 0.0 MHz

zlab rovclock-0.6c #
```

lspci:

```

0000:01:05.0 VGA compatible controller: ATI Technologies Inc Radeon 9100 IGP (prog-if 00 [VGA])

        Subsystem: ASUSTeK Computer Inc.: Unknown device 8107

        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-

        Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-

        Latency: 64 (2000ns min), cache line size 10

        Interrupt: pin A routed to IRQ 11

        Region 0: Memory at c0000000 (32-bit, prefetchable) [size=fdb00000]

        Region 1: I/O ports at d000 [size=256]

        Region 2: Memory at fdc00000 (32-bit, non-prefetchable) [size=64K]

        Expansion ROM at 00020000 [disabled]

        Capabilities: [58] AGP version 3.0

                Status: RQ=256 Iso- ArqSz=0 Cal=7 SBA+ ITACoh- GART64- HTrans- 64bit+ FW+ AGP3+ Rate=x4,x8

                Command: RQ=1 ArqSz=0 Cal=0 SBA+ AGP- GART64- 64bit- FW- Rate=<none>

        Capabilities: [50] Power Management version 2

                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)

                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

```

----------

## BetterUnborn

Underclocking definitely reduces heat!!

Power consumption is proportional to the frequency, so switching to half the frequency should bisect power consumption and thus heat production ... theoretically. I don't know exactly how this is with GPUs, but commonly ICs do have parasite currents that are independent of frequency, so the example above is best-case.

With my laptop, I can feel the effect ... before both chip and memory were constantly running at full speed heating up the left side of my keyboard and forcing the fan to start up. Now the fan is down, and my keyboard is ... cool ... only little warmer than the rest.

I can't say how thankful I am for rovclock ... combined with cpuspeedy and laptop-mode my machine is COMPLETELY silent ... in normal usage, no fan and no mechanical part at all is in motion, absolutely 0 Sone!! This makes linux on laptop a dream!!

Now even noise is better under linux than under windows (there I have no chance of finding something like laptop-mode, hence I can constantly hear my hard disk rotate)

----------

## shimbob

ya, I'm aware of the theory, mostly wondering how well the Radeons follow it. 

I will definitely try underclocking my laptop. 

ps I'm using cpufreqd to clock my 3ghz chips as low as 300mhz. waaay cooler. 

pps the neat thing about cpufreqd is that it picks a frequency based on a number of variables, including the current CPU load. Do the Radeons have any counters that can be watched and have the core/mem speeds adjusted based on that?

ppps I can underclock my 9100 as low as 0.0mhz. the next step up is 7.5mhz, but running startx will lock the machine, hard. Will play with it later to find minumum freq where X still runs

----------

## BetterUnborn

Well, it's just theory ...

But one thing caught my interest: how can you possibly underclock your cpu that far??

In my centrino I have only 4 steppings from 800MHz .. 1,6GHz. I can't go below 800MHz, though it definitely would be nice to do that. Is there a trick I haven't found yet?

And there is rumor that a cpu becomes unstable with too slow clock ... but 3GHz -> 300MHz is most I've ever heard of beeing stable.

----------

## nazgum

Thanks for this great tool.

I have a radeon9700 Mobility like an above poster, and it also reports the clock settings incorrect for me.

However I can still use the tool to underclock it some to reduce the heat of my video card [loathe ati - my card always overheats, not enough to be dangerous but enough to put lil artifacts if I use anything that is 3d too long like vmware] and generaly it is not overheating so much now [and no artifacts!]

----------

## shashir

Seems to be like a perfect program.

----------

## shimbob

 *BetterUnborn wrote:*   

> 
> 
> But one thing caught my interest: how can you possibly underclock your cpu that far??
> 
> In my centrino I have only 4 steppings from 800MHz .. 1,6GHz. I can't go below 800MHz, though it definitely would be nice to do that. Is there a trick I haven't found yet?
> ...

 

I think it really depends on which cpufreqd driver you're using in the kernel. Do you compile your own kernels? (silly question, this is gentoo!  :Smile: 

I'm using the "Intel Pentium 4 clock modulation" driver, which gives me the best results. I once used another driver (Intel Enhanced Speedstep or something) and it was like your situation, only 3gz or 1.5ghz. 

Rock stable here. (oh, and lowest freq is actually 375mhz, not 300)

Gander at the following:

```
azuz linux # cat /proc/cpuinfo

processor       : 0

vendor_id       : GenuineIntel

cpu family      : 15

model           : 2

model name      : Mobile Intel(R) Pentium(R) 4     CPU 3.06GHz

stepping        : 9

cpu MHz         : 383.404

cache size      : 512 KB

(clipped)

azuz linux # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

383323 766647 1149971 1533295 1916618 2299942 2683266 3066590

and

zlab dylan # cat /proc/cpuinfo

processor       : 0

vendor_id       : GenuineIntel

cpu family      : 15

model           : 3

model name      : Intel(R) Pentium(R) 4 CPU 3.00GHz

stepping        : 4

cpu MHz         : 2993.404

cache size      : 1024 KB

(clipped)

zlab dylan # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

375000 750000 1125000 1500000 1875000 2250000 2625000 3000000

```

----------

## Hasw

Some mobility revisions seems to have a different register access method, I'll work on a update for rovclock.

IIRC the "Intel Pentium 4 clock modulation" does not adjust the core voltage, so it can't be compared with Speedstep, with reduces the multiplier and voltage to save power.

The clock modulation stops the clock with a specific ratio, which isn't effective as Speedstep.

----------

## pumpkin0

Hello

THX A LOT for this tool. It helps me to cool down my system. You are doing the work xorg's radeon-team should do.

I'm using xorg 6.8.1 and this 7500-variant:

0000:01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500] (prog-if 00 [VGA])

        Subsystem: IBM: Unknown device 0530

        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR+ FastB2B+

        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-

        Latency: 66 (2000ns min), Cache Line Size: 0x08 (32 bytes)

        Interrupt: pin A routed to IRQ 11

        Region 0: Memory at e0000000 (32-bit, prefetchable) [size=128M]

        Region 1: I/O ports at 3000 [size=256]

        Region 2: Memory at c0100000 (32-bit, non-prefetchable) [size=64K]

        Capabilities: [58] AGP version 2.0

                Status: RQ=48 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3- Rate=x1,x2,x4

                Command: RQ=32 ArqSz=0 Cal=0 SBA+ AGP+ GART64- 64bit- FW- Rate=x1

        Capabilities: [50] Power Management version 2

                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)

                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

underclocked to 100/200 it still gives me decent speed. Underclocking to 50/80 crashs the system if i run glxgears (first some funny effects, then hard lock). I will try to find the optimal clocks now ...

----------

## jingo

 *pumpkin0 wrote:*   

> 
> 
> underclocked to 100/200 it still gives me decent speed. Underclocking to 50/80 crashs the system if i run glxgears (first some funny effects, then hard lock). I will try to find the optimal clocks now ...

 

Did you find the optimal underclock?

What is the generel ratio between core and mem clock?

I use this on my Thinkpad T42 to save power and avoid the fan running all the time!

----------

## Liquid Crystal

This thing ROCKS man!

```
lspci -v

0000:01:00.0 VGA compatible controller: ATI Technologies Inc M22 [Radeon Mobility M300] (prog-if 00 [VGA])

        Subsystem: Toshiba America Info Systems: Unknown device ff10

        Flags: bus master, fast devsel, latency 0, IRQ 11

        Memory at 90000000 (32-bit, prefetchable) [size=128M]

        I/O ports at c000 [size=256]

        Memory at c0000000 (32-bit, non-prefetchable) [size=64K]

        Capabilities: [50] Power Management version 2

        Capabilities: [58] #10 [0001]

        Capabilities: [80] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-

```

```
rovclock -i

Radeon overclock 0.6b by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x5460

I/O base address: 0xc000

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Memory size: 131072 kB

Memory channels: 1, CD,CH only: 0

tRcdRD:   5

tRcdWR:   3

tRP:      5

tRAS:     10

tRRD:     4

tR2W-CL:  3

tWR:      3

tW2R:     2

tW2Rsb:   1

tR2R:     2

tRFC:     17

tWL(0.5): 2

tCAS:     4

tCMD:     0

tSTR:     1

XTAL: 27.0 MHz, RefDiv: 6

Core: 398.25 MHz, Mem: 297.0 MHz

```

```
glxgears

14138 frames in 5.0 seconds = 2827.600 FPS

14137 frames in 5.0 seconds = 2827.400 FPS

14138 frames in 5.0 seconds = 2827.600 FPS

```

This gave me a boost of 800+ FPS in glxgears  :Smile: 

Thanks a lot for the great tool

----------

## ravloony

ok, really stupid question, but where should i put the ebuild in my overlay folder? media-gfx maybe? Does it even matter?

----------

## R4miu5

Hi, this tools seems really great. Couldn't you ask one of the developers to take it into the official portage tree? or you could ask breakmygentoo  :Razz: 

----------

## Hasw

 *ravloony wrote:*   

> ok, really stupid question, but where should i put the ebuild in my overlay folder? media-gfx maybe? Does it even matter?

 

I put it in sys-apps, but I think it doesn't matter on your local overlay. It seems there are now enough reports that it works, so I can submit the ebuild  :Smile: 

----------

## mArrAtoN

works great with 9550  :Very Happy: 

----------

## pumpkin0

 *jingo wrote:*   

> Did you find the optimal underclock?
> 
> What is the generel ratio between core and mem clock?

 

The mem-speed is the limiting factor. Don't go below 100 MHz for memory. 

At 80/110 my R51 stay's 100% slient. At 60/100 X goes south.

----------

## dwr_budr

Hasw! Dude! I have registred here just to say big thanks for this tool  :Smile:  Below are my 5 cents about compatibility.

Asus A9250 with 256RAM (pretty shitty card)

Original: 240/200

glxgears: 2150

OC'ed: 290/225

glxgears: 2475

It probably would do more. But  I have tested it for stability only at mode written above. This improvement has given me around 5+ fps in ET. Which is always useful on Radar  :Smile: 

System:  Asus P4B266 / P4 1.6 @ 1.9 / 1GB RAM etc.

PS This card is weird. Just tried 290/200 and got 2760fps in glxgears. Looks like it doesnt like memory OC'ing.

----------

## shimbob

 *Hasw wrote:*   

> 
> 
> IIRC the "Intel Pentium 4 clock modulation" does not adjust the core voltage, so it can't be compared with Speedstep, with reduces the multiplier and voltage to save power.
> 
> The clock modulation stops the clock with a specific ratio, which isn't effective as Speedstep.

 

you're right.

Using the P4 clock modulation, my temperature sat around upper 50s.

now using the ACPI P-States driver and the temperature idles at 43. 

Couldnt get the SpeedStep driver to work

----------

## apoc2222

Another big big THANK YOU   :Very Happy: 

It's working perfectly on my x600 mobility (samsung x25)

----------

## saquel

First of all. Really nice tool that you've created.

Just wanted to report that works also with my Hercules 3D Prophet FDX 8500 LE. This is not good graphics card for overclocking though.

250/250(default) glxgears result:

11871 frames in 5.0 seconds = 2374.200 FPS

274/253 glxgears result:

12352 frames in 5.0 seconds = 2470.400 FPS

only ~100 FPS boost in glxgears.

----------

## omp

Is this safe to use?  :Smile: 

----------

## atheb

Hi,

with the Radeon Mobility M6 LY in my R32 Thinkpad I encounter the following problems:

using rovclock when xorg is running:

  - the display gets garbled even by setting the core clock to its current value (141.75)

using rovclock from console (after stopping xorg):

  - the system hangs randomly upon execution of rovclock

  - but if it succeeds to set the core clock to its current value, the screen doesn't get garbled

haven't tried console without prior start of xorg yet.

 :Confused: 

I'm used to weird behaviour of IBM laptops, but perhaps there's another reason this time.

I wonder if possibly some setting in xorg is incompatible with the manual adjustment of the core clock.

(I'm using xorg 6.8.2-r1)

```

lspci -v

0000:01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M6 LY (prog-if 00 [VGA])

        Subsystem: IBM: Unknown device 1905

        Flags: bus master, stepping, fast Back2Back, 66Mhz, medium devsel, latency 66, IRQ 11

        Memory at e8000000 (32-bit, prefetchable) [size=128M]

        I/O ports at 2000 [size=256]

        Memory at d0100000 (32-bit, non-prefetchable) [size=64K]

        Capabilities: [58] AGP version 2.0

        Capabilities: [50] Power Management version 2

```

----------

## evildead

wow, this program is awesome!!

Hasw, thanx a lot!

btw,

is there any chance you might figure out how to softmod the radeon 9500 to a 9700 like the omega drivers for windos do?

when running win2000 with my softmodded and overclocked 9500 i can play counterstrike source with all settings to max @ 1280x1024 and get around 50 -60 FPS, but alas, with winex/cedega it is unplayable,

i get around 20-25 FPS with all settings to low @ 800x600 :'(

(i hope you still follow this thread)

----------

## RobNyc

does it go for radeon 9200 pro 256ddr?

----------

## OsZ

Hi, just registered to say thanks for that small GREAT tool! SO, BIG THX TO HASW !

Have running my Radeon 9500 as 9700 overclocked now which just reminds me on the M$ Windows times. glxgears more than 4000fps   :Very Happy:   Just takes me to the question from evildead:

 *evildead wrote:*   

> 
> 
> btw,
> 
> is there any chance you might figure out how to softmod the radeon 9500 to a 9700 like the omega drivers for windos do?
> ...

 

There are some HOWTOs available but here is shortly mine based on the ATI driver configured with fglrxconfig. Backup your xorg.conf before. In your xorg.conf you need to go to the ATI DEVICE SECTION and below IDENTIFIER and DRIVER you can add 'ChipID 0x4e44' - thats it - just as simple! Please browse for the chipid list for detailed chip informations. I have seen that somewhere in the net, can't remember where. 0x4e44 is the ID for the 9700. Please make sure that your card supports opening the additional 4 pipes. Restart your X windows and compare the fps with glxgears. If something went wrong just copy your backup xorg.conf back to /etc/X11 and restart X.

Cheers,

OsZ

----------

## evildead

OsZ wicked!

went from 540 to 700 FPS with gears!

thnx man... i couldnt have guessed it was that simple..

btw,

anybody here ever play counterstrike source through cedega?

it keeps randomly locking up my pc even if the videocard isn't overclocked....

----------

## quellthrix

First off, I readily admit I'm new to overclocking, so I really don't know exactly what I'm doing.  However, in an attempt to get back some lost performance by using ATI's crappy drivers for linux, I wanted to try to overclock my Radeon 9800 Pro.  Now, how exactly do I do this?... look for some resources online to look for some core and memory frequencies to set?  Bear in mind, I really am new to this.

Results of rovclock -i:

```
leviathan rovclock-0.6c # rovclock -i

Radeon overclock 0.6b by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x4e48

I/O base address: 0xb800

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Memory size: 131072 kB

Memory channels: 2, CD,CH only: 0

tRcdRD:   5

tRcdWR:   3

tRP:      5

tRAS:     10

tRRD:     4

tR2W-CL:  3

tWR:      2

tW2R:     2

tW2Rsb:   1

tR2R:     2

tRFC:     17

tWL(0.5): 2

tCAS:     4

tCMD:     0

tSTR:     0

XTAL: 27.0 MHz, RefDiv: 12

Core: 378.0 MHz, Mem: 337.50 MHz
```

If I correctly assume what I'm doing, my card is supposed to have a core of about 380 and memory of 340, so this would appear right.  Is all that's left to do is set the core and memory to some different values?  Am I correct in thinking that I just have to find some values to plug in from some overclocking site?

Thank for any help provided.

----------

## Reistlin

Many thanks for this program. I've used it to downclock my X300 to reduce the heating. It worked perfectly on my AMD64 box (nforce4-based) with x86_64 Gentoo.

----------

## stephen_in_nz

emerged it to see if I could drop the heat output from my mobility radeon x700.

Using ati 8.18.8 drivers on a 2.6.13 kernel.

I dropped the timings from 350/300 to 80/80 with a corresponding drop in glxgears.

However the temp didn't move - which surprised me. Could it be related to the  

Invalid reference clock from BIOS: 0.0 MHz

I get returned from rovclock -i ?

```

amd64 acpi # rovclock -i

Radeon overclock 0.6b by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x5653

I/O base address: 0xd800

Video BIOS shadow found @ 0xc0000

Invalid reference clock from BIOS: 0.0 MHz

Memory size: 131072 kB

Memory channels: 1, CD,CH only: 0

tRcdRD:   5

tRcdWR:   3

tRP:      5

tRAS:     14

tRRD:     1

tR2W-CL:  2

tWR:      5

tW2R:     1

tW2Rsb:   1

tR2R:     3

tRFC:     15

tWL(0.5): 3

tCAS:     2

tCMD:     0

tSTR:     0

XTAL: 27.0 MHz, RefDiv: 7

Core: 81.0 MHz, Mem: 81.0 MHz

```

Interesting tool though. Thanks

----------

## rschwarze

in battery mode make a

 *Quote:*   

> 
> 
> watch -n 2 "cat /proc/acpi/battery/BAT0/state"
> 
> 

 

there you can see a big difference in the current powerconsumption.

for me its about 950 with (450,210) and about 900 with (60,60).

So my battery runs 20 minutes longer!!

btw: how do you get the heat from your mobility radeon?

----------

## pumpkin0

i like your tool. It helps me a lot to cool down my system. But i still have a request:

The new 8.19 closed-source ATI-driver include Powerplay. These drivers manage to lower the frequency and voltage of the chips. But the driver only support radeons > 8500. 

Powerplay is also part of the radeon 7500. Based on windows <-> linux compares i think powerplay lowers the powerconsumption by 40% (effect of rovclock under linux vs effect of powerplay under windows)

Any chances ? Can i help somehow ?

----------

## alphonsebrown

this baby is great!!! I did the 100/100 underclock  :Smile:  just a couple of FPS down for fgl_gears

----------

## Hasw

First, I've to say I'm far away from beeing a GPU specialist. This program was born because I wanted one and there was none   :Smile: 

I got all information from some .h header files and code pieces, so it isn't perfekt. Especially the Mobile versions are sometimes a problem. 

To Powerplay: It is far better to also reduce the voltage for power-saving, however I've no idea yet where to begin (where are the voltage-control 'registers'? Differences between revisions? Does the 7500 really have the ability to change the core voltage and not only the frequency?)

I hope someone could answer the questions, because datasheets for newer ATI chips are very rare.

----------

## Nemem9aa

THX for this piece of software. Work great for x800pro@x800xt AGP

```
./rovclock -i

Radeon overclock 0.6b by Hasw (hasw@hasw.net)

Found ATI card on 02:00, device id: 0x4a50

I/O base address: 0xd000

Video BIOS shadow found @ 0xc0000

Invalid reference clock from BIOS: 0.0 MHz

Memory size: 262144 kB

Memory channels: 2, CD,CH only: 0

tRcdRD:   7

tRcdWR:   4

tRP:      5

tRAS:     6

tRRD:     6

tR2W-CL:  2

tWR:      7

tW2R:     1

tW2Rsb:   1

tR2R:     3

tRFC:     20

tWL(0.5): 3

tCAS:     4

tCMD:     0

tSTR:     0

XTAL: 27.0 MHz, RefDiv: 12

Core: 297.0 MHz, Mem: 263.25 MHz 
```

Well, it is writing about invalid reference clock, when changing frequency, but it works.

```
 ./rovclock -c 230 -m 230

Radeon overclock 0.6b by Hasw (hasw@hasw.net)

Found ATI card on 02:00, device id: 0x4a50

I/O base address: 0xd000

Video BIOS shadow found @ 0xc0000

Invalid reference clock from BIOS: 0.0 MHz

```

//edit: Does anyone knows how to monitor temperutere on this GPU by built-in temperature sensor?

----------

## Garvonis

Would just like to point out (since I used FIND for 9600 on all the last pages), that it works for my Radeon 9600. Was able to clock from 324.0/378.0 to 344.25/405.0. Even got higher FPS in glxgears, so I'm satisfied... Touched my fanless heatsink, and it wasn't that hot at all, though I'll have to touch it again when I'm playing a game or something, but yea, great app!

----------

## lightbulbjim

Many thanks for the useful app. Confirmed working on a Radeon 9550.    :Very Happy: 

----------

## holyghost

Seems very nice app, and quite useful for people owning laptops...just for undervoltage....

But the problem is that i cannot even run it...when i try it (as root) it keeps saying:

```
titan rovclock-0.6c # ./rovclock -i

bash: ./rovclock: Permission denied
```

The lspci output for me is 

```
01:05.0 VGA compatible controller: ATI Technologies Inc M9+ 5C61 [Radeon Mobility 9200 (AGP)] (rev 01) (prog-if 00 [VGA])

Subsystem: Hewlett-Packard Company Unknown device 006b

Flags: bus master, fast Back2Back, 66MHz, medium devsel, latency 66, IRQ 17

Memory at f0000000 (32-bit, prefetchable) [size=128M]

I/O ports at 9000 [size=256]

Memory at e8100000 (32-bit, non-prefetchable) [size=64K]

[virtual] Expansion ROM at e8120000 [disabled] [size=128K]

Capabilities: [58] AGP version 3.0

Capabilities: [50] PowerManagement version 2
```

----------

## NewBlackDak

I have this saved as radclock.sh in ~/scripts, and ~/scripts is part of my $PATH.

I'm going to start working on using it dynamically.  Eg kicking up to OC when running 3D apps, going to UC when the screensaver starts.  

Let me know if you have any improvements, or suggestions.

```

#!/bin/bash

#Author: NewBlackDak 

#Disclaimer

#I(nor the author of rovclock) is in no way responsible for damage cause to your machine by using 

#This script or the rovclock overclocking utility.

ROVCLOCK="which rovclock"

GREP=`which grep`

AWK=`which awk`

ECHO=`which echo`

VERSION="0.02"

 

#These are things you need to set yourself

#The current values are what works on my 9800

#DEFCORE is the default core clock DEFMEM is the default memory clock

#OC stantd for overclock, and UC stands for underclock

DEFCORE=324.0          

DEFMEM=290.25

OCCORE=380 

OCMEM=330

UCCORE=243

UCMEM=217.5

#Lets do some work

getClock()                      

{                               

   $ECHO $1                     

   CORE=`$ROVCLOCK -i | $GREP Core | $AWK '{ print $2}'`

   MEM=`$ROVCLOCK -i | $GREP Core | $AWK '{ print $5}'`

   $ECHO Core : $CORE           

   $ECHO Mem  : $MEM            

   $ECHO                        

}                               

setClock()                      

{                               

        $ROVCLOCK -c $1 -m $2>/dev/null

}                               

                                

                                

if [ $1 ]                       

then                            

        case $1 in              

                                

        d | D )                 

                getClock "Current"

                setClock $DEFCORE $DEFMEM

                getClock "New"  

        ;;                      

                                

        u | U )                 

                getClock "Current"

                $ECHO Set to Underclock Settings

                setClock $UCCORE $UCMEM

                getClock "New"  

        ;;                      

                                

        o | O )                 

                getClock "Current"

                $ECHO Set to Overclock Settings

                setClock $OCCORE $OCMEM

                getClock "New"  

        ;;                      

                                

        h | H )

                $ECHO "useage: $0 [h] [u] [d] [o] [v]"

                $ECHO "        h this help"

                $ECHO "        u set card to underclocked settings"

                $ECHO "        o set card to overclocked settings"

                $ECHO "        d set card to default settings"

                $ECHO "        v version number"

                $ECHO

        ;;

        v | V )

                $ECHO $0 $VERSION

                $ECHO

        ;;

        esac

else

        getClock "Current"

        $ECHO $0 h for help

fi

```

----------

## Hasw

 *holyghost wrote:*   

> Seems very nice app, and quite useful for people owning laptops...just for undervoltage....
> 
> But the problem is that i cannot even run it...when i try it (as root) it keeps saying:
> 
> ```
> ...

 

Is the rovclock binary executable? Run ls -l rovlock and check the file mode.

----------

## holyghost

 *Hasw wrote:*   

>  Is the rovclock binary executable? Run ls -l rovlock and check the file mode.

 

Yes, of course it is  :Wink:  ,this issue was the first i checked when i saw the permission denied message

----------

## Hasw

The program doesn't even start in your case. Otherwise at least the banner would be printed. Maybe the partition where rovclock resides is mounted with the "noexec" option?

----------

## holyghost

```
/dev/hda7               /home           reiserfs        user,notail,user_xattr    0 3
```

As you can see i don't have noexec option in my fstab..maybe one of these options that i have pulls the noexec option enabled...i don't have any idea and i'm too lazy right now to check...

Anyway thx for the idea that you gave me to copy it to another partition...

It Works now!!!    :Mr. Green:   :Mr. Green:    I'll look up why it didn't run from the beggining when i have time

----------

## NewBlackDak

Just thought I'd update with my new card

```
display: :0.0  screen: 0

OpenGL vendor string: ATI Technologies Inc.

OpenGL renderer string: RADEON X800 GTO Generic

OpenGL version string: 2.0.5642 (8.22.5)

Underclocked(Core : 202.50, Mem : 249.75)

18790 frames in 5.0 seconds = 3758.000 FPS

20004 frames in 5.0 seconds = 4000.800 FPS

20005 frames in 5.0 seconds = 4001.000 FPS

Default(Core : 398.25, Mem : 492.75)

35725 frames in 5.0 seconds = 7145.000 FPS

39462 frames in 5.0 seconds = 7892.400 FPS

39465 frames in 5.0 seconds = 7893.000 FPS

Overclocked(Core : 519.75, Mem : 580.50)

41367 frames in 5.0 seconds = 8273.400 FPS

46581 frames in 5.0 seconds = 9316.200 FPS

46587 frames in 5.0 seconds = 9317.400 FPS

46585 frames in 5.0 seconds = 9317.000 FPS
```

It's an X800GTO2 flashed to 16 pipes.

I do get an error, but obviously it's still setting the clocks effectively

```
Invalid reference clock from BIOS: 0.0 MHz
```

----------

## EASYdoor

sweet man,....this utility rocks!!!

----------

## Seehund

Does x.org/fglrx or whatever affect the core/mem speed of a graphics card, depending on what they ID it as?

I'm asking because I have a Radeon 9600 XT, which my system apparently thinks is a vanilla 9600.

My 9600 XT should be running @ ~500 MHz core and ~300 MHz mem (600 MHz DDR).

That's the default speed of an XT, and that's what I get in Windows.

rovclock -i reports:

```
Found ATI card on 01:05, device id: 0x4152

I/O base address: 0xd800

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Memory size: 131072 kB

Memory channels: 1, CD,CH only: 0

tRcdRD:   4

tRcdWR:   2

tRP:      4

tRAS:     9

tRRD:     3

tR2W-CL:  3

tWR:      3

tW2R:     2

tW2Rsb:   1

tR2R:     2

tRFC:     15

tWL(0.5): 2

tCAS:     4

tCMD:     0

tSTR:     1

XTAL: 27.0 MHz, RefDiv: 12

Core: [b]249.75[/b] MHz, Mem: 297.0 MHz
```

The mem frequency looks OK (rovclock reports half the 600 MHz DDR speed, right?), but 250 MHz core is not right.

If I use the -x option with rovclock and the suggested kHz values, then neither mem or core are correct.

Exactly what numbers are rovclock supposed to report (DDR, DDR/2)?

Is my XT really running at only 250 MHz core under Linux?

If I double the chrystal frequency (rovclock -x 5400 -i) then I get what's supposed to be the correct numbers (500/600).

Am I safe to assume that rovclock is simply wrong, and that my card really runs at its spec'd speed, and that I would actually get the speeds I'm typing as long as I also give the "-x 5400" argument?

----------

## jingo

I use rovclock to underclock my laptops radeon 7500 chip, to gain battery life.

I am running Ubuntu and have experienced something strange!

Under Ubuntu breezy (Xorg 6.8.2), this works flawlessly. Kernel 2.6.14.3

If I use same settings on Ubuntu Dapper (Xorg 7.0), it hangs my computer. Kernel 2.6.15

In both cases I have the radeonfb kernel module loaded to.

Anyone experiencing this on Gentoo?

Anything to do with the new Xorg 7.0 ?

How do I investigate this? Nothing in the logs!

----------

## /carlito

Works great on my XPRESS 200M. 

```
01:05.0 VGA compatible controller: ATI Technologies Inc ATI Radeon XPRESS 200M 5955 (PCIE) (prog-if 00 [VGA])

        Subsystem: Micro-Star International Co., Ltd. Unknown device 0131

        Flags: bus master, 66MHz, medium devsel, latency 255, IRQ 10

        Memory at d0000000 (32-bit, prefetchable) [size=256M]

        I/O ports at d800 [size=256]

        Memory at fbef0000 (32-bit, non-prefetchable) [size=64K]

        Expansion ROM at fbec0000 [disabled] [size=128K]

        Capabilities: [50] Power Management version 2

```

```
 rovclock -i

Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 01:05, device id: 0x5955

I/O base address: 0xd800

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 14.32 MHz

Memory size: 131072 kB

Memory channels: 0, CD,CH only: 0

tRcdRD:   3

tRcdWR:   1

tRP:      3

tRAS:     6

tRRD:     1

tR2W-CL:  1

tWR:      1

tW2R:     0

tW2Rsb:   0

tR2R:     1

tRFC:     13

tWL(0.5): 0

tCAS:     0

tCMD:     0

tSTR:     0

XTAL: 14.32 MHz, RefDiv: 6

Core: 78.76 MHz, Mem: 0.0 MHz

```

----------

## Prof_Albert

I use Kubuntu 5.10 with Kernel 2.6.16.7 and ATi Proprietary driver 8.23.7.

I wanted to use the tool to read my current clocks on my Mobility X700 to determine which powerstate is active.

my powerstates are

```

aticonfig --lsp

  core/mem      [flags]

---------------

1: 105/120 MHz  [low voltage]

2: 209/182 MHz  [low voltage]

3: 358/344 MHz  [default state]

```

when i run it in powerstate 3 i get this

```
./rovclock -i

Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x5653

I/O base address: 0x3000

Video BIOS shadow found @ 0xc0000

Invalid reference clock from BIOS: 0.0 MHz

Memory size: 262144 kB

Memory channels: 1, CD,CH only: 0

tRcdRD:   6

tRcdWR:   4

tRP:      6

tRAS:     14

tRRD:     1

tR2W-CL:  2

tWR:      4

tW2R:     5

tW2Rsb:   0

tR2R:     3

tRFC:     17

tWL(0.5): 3

tCAS:     2

tCMD:     0

tSTR:     0

XTAL: 27.0 MHz, RefDiv: 7

Core: 357.75 MHz, Mem: 344.25 MHz

```

according to the table above these clocks seem ok.

in Powerstate 2 i get

```

Core: 418.50 MHz, Mem: 364.50 MHz

```

(The rest of the output is the same)

in Powerstate 1 i even get 

```

Core: 418.50 MHz, Mem: 479.25 MHz

```

But the power consumption according to the /proc/acpi/battery/BAT1/state is lower in powerstate 1 and 2

----------

## jorges

Hi,

I tried to use rovclock with my ati mobility x1600, but with no luck. Looking at power consumption, changing the core and memory frequencies seems to have no effect at all. However, I got lock-ups in X several times, only way out was a hard reset.

This the output of rovclock -i:

```
Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x71c5

I/O base address: 0xb800

Video BIOS shadow found @ 0xc0000

Invalid reference clock from BIOS: 0.0 MHz

Memory size: 131072 kB

Memory channels: 0, CD,CH only: 0

tRcdRD:   3

tRcdWR:   1

tRP:      3

tRAS:     6

tRRD:     1

tR2W-CL:  1

tWR:      1

tW2R:     0

tW2Rsb:   0

tR2R:     1

tRFC:     13

tWL(0.5): 0

tCAS:     0

tCMD:     0

tSTR:     0

XTAL: 27.0 MHz, RefDiv: 12

Core: 0.19 MHz, Mem: 0.0 MHz

```

This is what I get when I change frequencies (and I don't get a lock-up):

```
root@susi { ~ }$ rovclock -c 300 -m 300

Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x71c5

I/O base address: 0xb800

Video BIOS shadow found @ 0xc0000

Invalid reference clock from BIOS: 0.0 MHz
```

This is the output (partial) of lspci -vv :

```
01:00.0 VGA compatible controller: ATI Technologies Inc Unknown device 71c5 (prog-if 00 [VGA])

        Subsystem: ASUSTeK Computer Inc. Unknown device 10b2

        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-

        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-

        Latency: 0, Cache Line Size 10

        Interrupt: pin A routed to IRQ 23

        Region 0: Memory at c0000000 (32-bit, prefetchable) [size=256M]

        Region 1: I/O ports at b800 [size=256]

        Region 2: Memory at fe2f0000 (32-bit, non-prefetchable) [size=64K]

        Expansion ROM at fe2c0000 [disabled] [size=128K]

        Capabilities: [50] Power Management version 2

                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)

                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

        Capabilities: [58] Express Legacy Endpoint IRQ 0

                Device: Supported: MaxPayload 128 bytes, PhantFunc 0, ExtTag+

                Device: Latency L0s <4us, L1 unlimited

                Device: AtnBtn- AtnInd- PwrInd-

                Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported-

                Device: RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+

                Device: MaxPayload 128 bytes, MaxReadReq 128 bytes

                Link: Supported Speed 2.5Gb/s, Width x16, ASPM L0s L1, Port 0

                Link: Latency L0s <64ns, L1 <1us

                Link: ASPM Disabled RCB 64 bytes CommClk- ExtSynch-

                Link: Speed 2.5Gb/s, Width x16

        Capabilities: [80] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-

                Address: 0000000000000000  Data: 0000

```

Any ideas? I'd really like to underclock the card and get some extra time when running on batteries.

Thanks,

Jorges

Edit: kernel is 2.6.15-gentoo-r7, using ati-drivers-8.24.8

----------

## Hasw

It seems the chip registers are different on a Mobility X1600. 

rovclock -i should show the correct GPU and memory clock frequency (more or less closely, depending if it found the reference clock in the video BIOS) and

I think <code>Core: 0.19 MHz, Mem: 0.0 MHz </code>is far away from the correct values.

Conclusion: Don't use rovclock for Mobility X1600 (yet).

Maybe I'll fix it if I find out what the differences are...

----------

## jorges

 *Hasw wrote:*   

> It seems the chip registers are different on a Mobility X1600. 
> 
> rovclock -i should show the correct GPU and memory clock frequency (more or less closely, depending if it found the reference clock in the video BIOS) and
> 
> I think <code>Core: 0.19 MHz, Mem: 0.0 MHz </code>is far away from the correct values.
> ...

 

OK, thanks. I hope you can fix it.

jorges

----------

## Tlaloc

Are there to expect any problems using this with the fglrx driver in big desktop (two monitors) mode?

Bye, Val.

----------

## BetterUnborn

 *Quote:*   

> n Powerstate 2 i get
> 
> Core: 418.50 MHz, Mem: 364.50 MHz

 

Same for me here, got an X600 Mobility.

```
aticonfig --list-powerstates

    core/mem      [flags]

-----------------

* 1: 105/122 MHz  [low voltage]

  2: 209/182 MHz  [low voltage]

  3: 392/250 MHz  [overdrive, default state]
```

Changing the frequencies with rovlock in powerstates 1 or 2 doesn't seem to have any effect on power consumption at all. No matter what I do, I always get the same ~1220 mA current drawn from my battery (state 1). Only if I go to low with the frequency, I get a system hang. Maybe it's insignificant then, in undervolted state frequency doesn't matter too much.

ATI's PowerPlay not only undervolts and underclocks, if you have PCI express, it also disables PCI-lanes (at least windows drivers do so). I've read that the 16 lanes PCIexpress in normal state provides consume something around 6-7W (!). 6 W@12V -> 200mA extra current ... and somehow this number was familiar to me. I've noticed a strange fluctuation in power consumption, sometimes the current my notebook needs switches down to ~1000mA ... compared to the number above, this could just be my PCIexpress. I never noticed any change in system performance this fluctuation was related to, nor did I switch off any components, nor was it related to harddisk or fan activity. The only noticeable thing was some extra heat.

Could it be that switching off PCI lanes is somehow "unstable"? And something tries to re-enable them? Where can I find system information about my PCI express?

----------

## richard77

It works well also with my R9200:

stock frequency: 250/200 (GPU/mem)

glxgears: 1365

underclock: 100/150 (GPU/mem)

glxgears: 776

underclock: 200/150 (GPU/mem)

glxgears: 1000

Some artifact due maybe to GPU to much clocked vs memory

overclock: 250/250 (GPU/mem)

glxgears: 1620

overclock: 280/280 (GPU/mem)

glxgears: 1830

overclock: 280/300 (GPU/mem)

glxgears: 1910

overclock: 290/300 (GPU/mem)

glxgears: 1940

aiming for 2000:

overclock: 280/330 (GPU/mem)

glxgears: 2020

a lot of artifacts

Just to have more data for charts:

underclock: 190/200 (GPU/mem)

glxgears: 1260

Let's see how much low we can go:

underclock: 50/120 (GPU/mem)

a lot of artifacts, no glxgears. Same artifacts with 100/120

underclock: 50/150 (GPU/mem)

glxgears: 450, artifacts only with glxgears

underclock: 80/150 (GPU/mem)

glxgears: 675. No artifacts.

140 for memory is to low (artifacts)

I think that i will leave it underclock (hey, its 32°C now, at 8pm, and no conditioning in my house).

Thanks for your programming skill proof

federico

----------

## zietbukuel

Anyone knows how to make this permanent?

----------

## synss

 *zietbukuel wrote:*   

> Anyone knows how to make this permanent?

 

To make it permanent, just write an initscript or put the command into /etc/conf.d/local.start

----------

## zietbukuel

Thank you.

----------

## JuMPeRfLy

I have the command in my local.start which works until I start X, then the default clocks are loaded.  Anyone know why this would happen?

----------

## zietbukuel

 *JuMPeRfLy wrote:*   

> I have the command in my local.start which works until I start X, then the default clocks are loaded.  Anyone know why this would happen?

 

I have done this:

Created an executable file in /etc/init.d named rovclock with the contents:

```
#!/sbin/runscript

start() {

        rovclock -c 340 -m 250

}

stop(){

        rovclock -c 310 -m 190

}
```

This is form my card, change the values to fit your needs.

Then do this:

```

rc-update add rovclock default
```

And it should work  :Smile:  (at least works for me...)

----------

## shimbob

I'm getting 0mhz for my memory speed.

This is on an Asus Pundit-R, w/ ATI 9100IGP chipset

```
zlab cpufreq # rovclock -i

Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 01:05, device id: 0x5834

I/O base address: 0xd000

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 14.32 MHz

Memory size: 1024 kB

Memory channels: 3, CD,CH only: 0

tRcdRD:   5

tRcdWR:   8

tRP:      8

tRAS:     18

tRRD:     3

tR2W-CL:  2

tWR:      1

tW2R:     3

tW2Rsb:   0

tR2R:     2

tRFC:     13

tWL(0.5): 0

tCAS:     6

tCMD:     0

tSTR:     0

XTAL: 14.32 MHz, RefDiv: 13

Core: 100.24 MHz, Mem: 0.0 MHz

```

```
01:05.0 VGA compatible controller: ATI Technologies Inc Radeon 9100 IGP (prog-if 00 [VGA])

        Subsystem: ASUSTeK Computer Inc. Unknown device 8107

        Flags: bus master, 66MHz, medium devsel, latency 96, IRQ 11

        Memory at e8000000 (32-bit, prefetchable) [size=64M]

        I/O ports at d000 [size=256]

        Memory at fda00000 (32-bit, non-prefetchable) [size=64K]

        Expansion ROM at fd900000 [disabled] [size=128K]

        Capabilities: [58] AGP version 3.0

        Capabilities: [50] Power Management version 2

```

----------

## inet_igor

Thank you for making this code available! 

What is involved in getting support for integrated mobile graphics (express 1100, 1250) overclocking?

----------

## SteveBallmersChair

I get the same "invalid reference clock from BIOS: 0.0 MHz" when I ran rovclock -i on my Radeon x1900GT. I think that it might have something to do with the kernel not fully recognizing the GPU ("unknown device 724b")

```

/usr/sbin/lspci -vv

05:00.0 VGA compatible controller: ATI Technologies Inc Unknown device 724b (prog-if 00 [VGA])

        Subsystem: ATI Technologies Inc Unknown device 0b12

        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-

        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-

        Latency: 0, Cache Line Size 08

        Interrupt: pin A routed to IRQ 58

        Region 0: Memory at d0000000 (64-bit, prefetchable) [size=256M]

        Region 2: Memory at fd7f0000 (64-bit, non-prefetchable) [size=64K]

        Region 4: I/O ports at 6c00 [size=256]

        [virtual] Expansion ROM at fd700000 [disabled] [size=128K]

        Capabilities: [50] Power Management version 2

                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)

                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

        Capabilities: [58] Express Endpoint IRQ 0

                Device: Supported: MaxPayload 128 bytes, PhantFunc 0, ExtTag+

                Device: Latency L0s <4us, L1 unlimited

                Device: AtnBtn- AtnInd- PwrInd-

                Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported-

                Device: RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+

                Device: MaxPayload 128 bytes, MaxReadReq 128 bytes

                Link: Supported Speed 2.5Gb/s, Width x16, ASPM L0s L1, Port 0

                Link: Latency L0s <64ns, L1 <1us

                Link: ASPM Disabled RCB 64 bytes CommClk- ExtSynch-

                Link: Speed 2.5Gb/s, Width x16

        Capabilities: [80] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-

                Address: 0000000000000000  Data: 0000

```

----------

## UberPinguin

I have an ATI Radeon Mobility 7500 in my laptop, ChipID 0x4C57, with 32MB shared RAM.  Compaq crippled the BIOS in this thing, so I can't change the amount of RAM shared to video without doubling the amount of RAM in the computer.  I haven't been able to find a decent group of settings for overclocking  this video card.  Can anyone share their wisdom on this?

```
#lspci -vv 

01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500] (prog-if 00 [VGA])

   Subsystem: Compaq Computer Corporation Unknown device 00b7

   Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B-

   Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-

   Latency: 66 (2000ns min), Cache Line Size: 32 bytes

   Interrupt: pin A routed to IRQ 11

   Region 0: Memory at 48000000 (32-bit, prefetchable) [size=128M]

   Region 1: I/O ports at 3000 [size=256]

   Region 2: Memory at 40400000 (32-bit, non-prefetchable) [size=64K]

   [virtual] Expansion ROM at 40420000 [disabled] [size=128K]

   Capabilities: [58] AGP version 2.0

      Status: RQ=48 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3- Rate=x1,x2,x4

      Command: RQ=32 ArqSz=0 Cal=0 SBA+ AGP+ GART64- 64bit- FW- Rate=x4

   Capabilities: [50] Power Management version 2

      Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)

      Status: D0 PME-Enable- DSel=0 DScale=0 PME-
```

Device Section of xorg.conf:

```
Section "Device"

    Identifier "Radeon 7500[0]"

    Driver     "radeon"

    BusID      "PCI:1:00:0"

    Option     "EnablePageFlip" "true"

    Option     "BackingStore"  "true"

    Option     "RenderAccel"   "true"

    Option     "AGPFastWrite"  "true"

    #Option     "AccelMethod"   "xaa"

    Option     "AccelMethod"   "exa"

    Option     "AGPMode"       "4"

    Option      "GARTSize" "64"

    Option      "ColorTiling" "1"

    Option     "DDC"

    Option     "MergedNonRectangular" "true"

    Option     "DynamicClocks" "true"

    Option     "MergedFB"      "true"

    Option     "CRT2Hsync"      "30-121"

    Option     "CRT2VRefresh"   "60"

    Option     "MetaModes"      "1024x768-1280x1024 1024x768"

    Option     "CRT2 Position"  "RightOf"

    Option     "BIOSHotkeys"    "on"

EndSection
```

```
#rovclock -i

Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x4c57

I/O base address: 0x3000

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Memory size: 32768 kB

Memory channels: 2, CD,CH only: 0

tRcdRD:   9

tRcdWR:   4

tRP:      8

tRAS:     18

tRRD:     3

tR2W-CL:  3

tWR:      4

tW2R:     2

tW2Rsb:   1

tR2R:     2

tRFC:     20

tWL(0.5): 2

tCAS:     3

tCMD:     0

tSTR:     1

XTAL: 27.0 MHz, RefDiv: 6

Core: 258.75 MHz, Mem: 364.50 MHz
```

```
$glxgears

libGL warning: 3D driver claims to not support visual 0x4b

3216 frames in 5.0 seconds = 643.123 FPS

3213 frames in 5.0 seconds = 642.470 FPS
```

Thanks!

----------

## shimbob

 *SteveBallmersChair wrote:*   

> I get the same "invalid reference clock from BIOS: 0.0 MHz" when I ran rovclock -i on my Radeon x1900GT. I think that it might have something to do with the kernel not fully recognizing the GPU ("unknown device 724b")

 

I believe the output of lspci does not rely on the kernel, but on /usr/share/misc/pci.ids

----------

## UberPinguin

Got all my timings/etc. figured out.  Just in case anyone else needs the info for a Radeon Mobility M7 7500 card (yes, I know it's pretty old, but...):

```
UberPinguin ubrpngn # rovclock -i

Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x4c57

I/O base address: 0x3000

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Memory size: 32768 kB

Memory channels: 2, CD,CH only: 0

tRcdRD:   5

tRcdWR:   2

tRP:      4

tRAS:     14

tRRD:     3

tR2W-CL:  2

tWR:      3

tW2R:     0

tW2Rsb:   1

tR2R:     1

tRFC:     14

tWL(0.5): 2

tCAS:     3

tCMD:     0

tSTR:     1

XTAL: 27.0 MHz, RefDiv: 6

Core: 290.25 MHz, Mem: 380.25 MHz
```

This gives me a great performance boost with (so far) good stability.  Tweaking beyond this results in artifacts, distortion, loss of performance, and sometimes even rebooting.  I've gone from ~647fps to ~1018 in glxgears and can now use compositing without worry.  Yay!

----------

## jrtayloriv

I have a Radeon Mobility M6, what are the maximum safe settings for overclocking my video card?

----------

## UberPinguin

 *jrtayloriv wrote:*   

> I have a Radeon Mobility M6, what are the maximum safe settings for overclocking my video card?

 

Your best bet is to increment each setting slowly, testing along the way.  Keep an eye on temperature and stability, and scale back a little when they get out of hand.

----------

## jrtayloriv

What would be consider a safe operating temperature for a Mobility M6?

Thanks,

jrtayloriv

----------

## jbryner

I've got an ati firemv2400 that has multiple gpus: 

```

lspci:

05:01.0 VGA compatible controller: ATI Technologies Inc Radeon R250 Lf [FireGL 9000] (rev 02)

05:01.1 Display controller: ATI Technologies Inc Radeon R250 Ln [Radeon Mobility 9000 M9] [Secondary] (rev 02)

05:05.0 Display controller: ATI Technologies Inc Radeon R250 Lf [FireGL 9000] (rev 02)

05:05.1 Display controller: ATI Technologies Inc Radeon R250 Ln [Radeon Mobility 9000 M9] [Secondary] (rev 02)

```

rovclock seems to affect only the first one: 

```

pcm0175 smbenumshares # rovclock -i

Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 05:01, device id: 0x4c66

I/O base address: 0xd800

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 27.0 MHz

Memory size: 65536 kB

Memory channels: 1, CD,CH only: 0

tRcdRD:   6

tRcdWR:   2

tRP:      7

tRAS:     16

tRRD:     5

tR2W-CL:  3

tWR:      3

tW2R:     1

tW2Rsb:   1

tR2R:     2

tRFC:     20

tWL(0.5): 2

tCAS:     3

tCMD:     0

tSTR:     1

XTAL: 27.0 MHz, RefDiv: 12

```

But I'm basing this only its display of the first card in the lspci. Anyone know how this affects cards like this with multi-screen outputs? The firemv2400 is a 4 head card.

----------

## Phlogiston

Anyone knows about this xtal frequency?

----------

## Therion 666

How i can overclock this card?

```
01:05.0 VGA compatible controller: ATI Technologies Inc RS300M AGP [Radeon Mobility 9100IGP]
```

```
Found ATI card on 01:05, device id: 0x5835

I/O base address: 0x9000

Video BIOS shadow found @ 0xc0000

Reference clock from BIOS: 14.31 MHz

Memory size: 131072 kB

Memory channels: 2, CD,CH only: 0

tRcdRD:   9

tRcdWR:   8

tRP:      8

tRAS:     18

tRRD:     3

tR2W-CL:  2

tWR:      1

tW2R:     3

tW2Rsb:   0

tR2R:     2

tRFC:     13

tWL(0.5): 0

tCAS:     6

tCMD:     0

tSTR:     0

XTAL: 14.31 MHz, RefDiv: 6

Core: 300.51 MHz, Mem: 0.0 MHz
```

----------

## auftable

Is this program still being developed? I could use it with my ATI Radeon Mobility HD 4330. 

Is this the official place for discussing this program?

I think it does not fully recognize my card:

```

sudo rovclock -i

Radeon overclock 0.6e by Hasw (hasw@hasw.net)

Found ATI card on 01:00, device id: 0x9552

I/O base address: 0x2000

Video BIOS shadow found @ 0xc0000

Invalid reference clock from BIOS: 0.0 MHz

Memory size: 0 kB

Memory channels: 1, CD,CH only: 0

tRcdRD:   3

tRcdWR:   1

tRP:      3

tRAS:     6

tRRD:     1

tR2W-CL:  1

tWR:      1

tW2R:     0

tW2Rsb:   0

tR2R:     1

tRFC:     13

tWL(0.5): 0

tCAS:     0

tCMD:     0

tSTR:     0

```

I also tried -x 1432 and 2950.

The bus frequencies are not shown. Can I do this with the open radeon driver or do I need to use fglrx?

----------

