I have a Dell XPS laptop with a NVIDIA GeForce Go 7900 GTX.
It has 3 levels of performance.
Level 0 = 100,100
Level 1 = 200,300
Level 2 = 500,600
These are Core and RAM speeds respectively.
The issue is that 3D is enable but when I’m logged in to a desktop, KDE3 or 4, doesn’t matter it always goes to full power, being performance level 2 (500,600Mhz). Even when I’m not using 3D at all.
If I’m working in Vista on the same machine it’s always running at 100,100 and goes to 500,600 only when needed (gaming or other 3D stuff).
Why can’t linux work the right way from the start ??
OK, I found the correct combination of all the parameters en had to copy that option line into three locations in my xorg.conf file (because I have three Device sections).
Now I’m able to set any level I want and the laptops runs cool and quiet.
I’ll see if I can change the speed dynamically with NVClock because I cannot change the speeds without modifying the xorg file and reloading the nvidia kernel modules.
The lines with the RegistryDwords are the lines for the PowerMizer. PowerMizerEnable=0x1 = to switch it on or off (using hex codes) PerfLevelSrc=0x2222 = is the performance strategy where 22 is the code for fixed frequency and 33 for adaptive frequency, defined for battery and AC use. PowerMizerDefault=0x3 = is the code to enable a performance level for battery use from 1 to 3, being from high (1) to low (3) performance. PowerMizerDefault=0x3 = same as above but for AC power.
The only issue is that you cannot change these values on the fly because there is no tool.
So you have to play with different xorg files and shellscript that bring your system to runlevel 3, rename some xorg files to the one you want, unload and reload the kernel module and switch the system back to runlevel 5.
With a script this only takes about 5 seconds.
As long as it works I’ll take that for granted
At least 3D is still working fine but a bit less performant, but who needs 600Mhz for wobbly windows and a desktop cube