proprietary drivers: video card power saving

Soulkeeper

Diamond Member
Nov 23, 2001
6,736
156
106
I own a 9800GT and a gts 250
Both of these cards seem to only have 1 performance level "Performance level 0:"
and they don't downclock/undervolt when idle according to nvidia-settings or my temperature
Is this a bios related issue (ie: no alternate perf levels available) ?

How does the fglrx power savings support stand ?
I'm specifically considering a radeon 6670
Would this card+fglrx downclock/undervoltage when idle at the dekstop ?
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,736
156
106
Look into the "coolbits" feature for nvidia cards.

I tried that, could only unlock overclocking and fan speed adjustment :(
no dynamic clocking or alternate Performance levels

I just went down and purchased a radeon 6670, hopefully this will help me in my quest to use less power :)
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,736
156
106
Everything works great !

I can set 3 performance levels with gpu/mem/voltage pairs (using AMDOverdriveCtrl + ADL)
can't adjust the fan speed, but ohh well

this is nice, reduced my system idle power usage by around 37 watts
performance is good and 2d text looks much better :)
 

AnonymouseUser

Diamond Member
May 14, 2003
9,943
107
106
Well I'm surprised that ATI's powersaving options work better than Nvidia under linux. I also have a GTS 250, and while it does reduce power when not gaming, it doesn't seem to reduce power enough.

When viewing nvidia-settings, I can change the PowerMizer level from "Adaptive" to "Prefer Maximum Performance" and watch it change under Performance Levels from 0 to 2, but that only changes from

500Mhz:900Mhz:1200Mhz (level 0)
to
675Mhz:900Mhz:1500Mhz (level2)

When switching back to "Adaptive", it drops to level 1 (500Mhz:900Mhz:1200Mhz) before settling back at level 0.

500Mhz doesn't seem low enough. Anyone know what it should be and how to lower it?
 

Jodell88

Diamond Member
Jan 29, 2007
8,762
30
91
I'm not surprised. AMD/ATI drivers are near feature parity with its windows drivers. The problem with the AMD/ATI drivers are that they're a bit buggy and they're always behind the bell curve, in regards to compatibilty with Xorg and the like.

You can't use Gnome Shell with AMD/ATI drivers because of graphical corruption. :/
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,736
156
106
Well I'm surprised that ATI's powersaving options work better than Nvidia under linux. I also have a GTS 250, and while it does reduce power when not gaming, it doesn't seem to reduce power enough.

When viewing nvidia-settings, I can change the PowerMizer level from "Adaptive" to "Prefer Maximum Performance" and watch it change under Performance Levels from 0 to 2, but that only changes from

500Mhz:900Mhz:1200Mhz (level 0)
to
675Mhz:900Mhz:1500Mhz (level2)

When switching back to "Adaptive", it drops to level 1 (500Mhz:900Mhz:1200Mhz) before settling back at level 0.

500Mhz doesn't seem low enough. Anyone know what it should be and how to lower it?


my guess is your video card bios was more complete than mine
I only had 738Mhz:1100Mhz and no other level's to choose from
I didn't have the desire/balls to flash a "modified bios" off some russian site to possibly fix the problem
 
Last edited:

Soulkeeper

Diamond Member
Nov 23, 2001
6,736
156
106
before the gts 250 I owned a radeon 3870
that radeon ran great in linux too, the only reason I upgraded was for OpenCL/cuda support

now power usage/efficiency is my main concern
(I stopped running distributed computing and watched my electric bill drop over $100/month)

upgrade path:
3870 -> gts 250 -> 6670
all roughly similar performance

the only thing that would entice me to upgrade again would be rage/doom4 linux clients and 28nm gpu's
 
Last edited:

AnonymouseUser

Diamond Member
May 14, 2003
9,943
107
106
my guess is your video card bios was more complete than mine
I only had 738Mhz:1100Mhz and no other level's to choose from
I didn't have the desire/balls to flash a "modified bios" off some russian site to possibly fix the problem

Yeah, that's the setting according to the BIOS, and after looking at other BIOS files available here, many don't have three speeds for Performance Levels. These are my current settings and BIOS info:

Code:
$ nvclock -i
-- General info --
[B]Card:           nVidia Geforce GTS 250[/B]
Architecture:   G92 A2
PCI id:         0x615
[B]GPU clock:      124.872 MHz[/B]
Bustype:        PCI-Express

[B]-- Shader info --
Clock: 297.000 MHz[/B]
Stream units: 128 (11111111b)
ROP units: 16 (1111b)
[B]-- Memory info --[/B]
Amount:         512 MB
Type:           256 bit DDR3
[B]Clock:          899.996 MHz[/B]

-- PCI-Express info --
Current Rate:   16X
Maximum rate:   16X

-- Sensor info --
Sensor: GPU Internal Sensor
GPU temperature: -388C

-- [B]VideoBios[/B] information --
Version: 62.92.4c.00.40
Signon message: GeForce GTS 250 VGA BIOS
Performance level 0: gpu 500MHz/shader 1200MHz/memory 900MHz/1.00V/100%
Performance level 1: gpu 500MHz/shader 1200MHz/memory 900MHz/1.00V/100%
Performance level 2: gpu 675MHz/shader 1500MHz/memory 900MHz/1.30V/100%
VID mask: 3
Voltage level 0: 0.95V, VID: 0
Voltage level 1: 1.00V, VID: 0
Voltage level 2: 1.05V, VID: 2
Voltage level 3: 1.10V, VID: 3

nvidia-settings** does work for setting separate 2D and 3D clock settings, so as you can see, my GPU is @ 125Mhz and shader is @ 300Mhz. Adjusting memory clock for 2D affects 3D as well, so I'm leaving that alone. I tried setting my fan speed lower, but it won't go lower than 65%, so that must be the lowest the BIOS allows.

Now I just need to get these settings to autostart on login/reboot and I'll be set.

** Option "Coolbits" "1" allows overclocking with nvclock and/or nvidia-settings
Option "Coolbits" "4" allows fan speed adjustment with nvclock and/or nvidia-settings
Option "Coolbits" "5" allows overclocking and fan speed adjustment with nvclock and/or nvidia-settings

See here for setting coolbits option.
 
Last edited:

Soulkeeper

Diamond Member
Nov 23, 2001
6,736
156
106
yeah, that's exactly what I thought

my card was just a dud
very happy with the radeon 6670
dunno if i'll buy an xfx card again because of that lame bios
evga 9800gt also only had one perf level


also coolbits don't unlock manual voltage settings for nvidia-settings
unless you know a way to do that ?
 

AnonymouseUser

Diamond Member
May 14, 2003
9,943
107
106
I don't know if it's possible to manually adjust the voltage, but at this point I would go ahead and flash a new BIOS. I've seen some (Windows) programs that let you modify the BIOS yourself, so you could save your current BIOS, edit it, then re-flash your card.
 

VirtualLarry

No Lifer
Aug 25, 2001
56,587
10,225
126
(I stopped running distributed computing and watched my electric bill drop over $100/month)
I stopped running distributed computing, and my electric bill keeps going up. I blame the 12,000 BTU AC, and warm weather.

I was a bit surprised that I wasn't saving any money by letting the computers sleep.
 

AnonymouseUser

Diamond Member
May 14, 2003
9,943
107
106
After spending some time trying to downclock a BFG Tech 9600GT on a Vista machine I have come to the conclusion that it's easier to downclock under Linux than it is under Windows. I think I finally found a program I can use, though: MSI's Afterburner.

It also appears that there is only one speed in the BIOS on most older desktop nvidia GPUs, which makes this even more difficult. I may try a BIOS flash on the 9600GT later and see if I can add the various performance levels manually.
 
Last edited:

AnonymouseUser

Diamond Member
May 14, 2003
9,943
107
106
Well I flashed the 9600GT with lowered frequencies (modified original BIOS), but that didn't seem to do anything. Even used a simple program to force enable PowerMizer, and still nothing. Don't know if it's due to being an older card or just Vista that's preventing the downclocking, but will let it be for now.

As for Linux downclocking, I decided to benchmark to verify that the clocks were working since the temps were basically unchanged with the lowered clocks. I first set PowerMizer Preferred Mode to "Prefer Maximum Performance", started glxgears, then reduced the 3D Clock Frequencies gradually down to the minimum allowed in nvidia-settings. FPS went from ~14,400 down to ~7,100. Reducing Memory clocks dropped it further to ~4400 FPS.

I am now convinced that PowerMizer is working properly, and have created a startup script to set speeds at login.

Code:
#!/bin/bash
nvidia-settings -a GPUOverclockingState=1 -a GPU2DClockFreqs=125,900  -a GPU3DClockFreqs=710,900

FWIW, I am using the latest drivers downloaded and manually installed from Nvidia (280.13) instead of those from the Debian repos (195.36.31).
 

AnonymouseUser

Diamond Member
May 14, 2003
9,943
107
106
It's a shame your cards didn't work and it makes me wonder if it's really the BIOS issue or a driver issue. This also made me realize the gpus haven't been downclocking like I had been led to believe they were... :\