View Single Post
Old 06-23-11, 01:54 PM   #10
Registered User
Join Date: Mar 2009
Posts: 12
Default Re: NVIDIA GeForce 8800 GT's fan spins up in text console mode?

Thanks yes it helps me.

First, if I understand well, your lsmod output shows that nvidia remains loaded in the kernel even after you stop X. This means your fan stops being regulated becuase X is stopped, although the nvidia driver is still loaded. This is also the situation I get natively with my 9600GT.

You have similar registers to mine in situations where the fan is at max speed. The funny thing is that you have them in both outputs that you post. But if you can check your copy-paste, it seems you have mixed it up so that I don't know which is which.

Anyway, it could be also that your fanspeed is automatically regulated under X without the help of the registers.

If you have the time to retry and post the output of nvclock -D, or correct what you posted below, it would be helpful.

Now, if your goal is to reduce the noise of your GPU fan when you don't have X running, I could help you, but the operation might be a little dangerous (not for you, but for your video card, maybe). I of course wouldn't take any responsabilty (I'd only take the glory if it works out fine in the end).

And also not that simple, since it would involve changing the source code of nvclock, compiling a patched version and trying it on your card. All I can tell you it that it worked on my GPU yesterday, and that it's still working today. Mine is a different model, but you seem to have the same fan-related registers, and the code of nvclock suggests that they are to be handled the same way.

We need to change the value stored in these 3 registers:
NV_E100 (0xe100): 00001900
NV_E11C (0xe11c): 00000001
NV_E120 (0xe120): 00000000
(but if it does not work, we may have a chance to make it anyway by playing with e114 and e118 instead of e11c and e120)

If you want to go this route, one important thing that you will have to check is whether your registers are inverted or not. I know nvclock will treat your card just like mine in everything that is fan-related. For my card, nvclock assumes they are inverted, but in fact they're not. This means if I did nvclock -F -f 100, I would stop the fan of my video card...

So (still assuming you'd like to take the rather hackish route I propose), first try the following command:
nvclock -F -f 50
. As long as you have a value of 1 in the register e11c as you have posted, you will be kicked out by the following error message:
Error: Your card doesn't support fanspeed adjustments!
Just for the sake of curiosity, I would try that both under X and without X started.

If it works in one case or the other, you should be able to determine whether you registers are inverted or not by changing the value 50 to 75 and/or 25 and seeing what effect it has (when I do it myself under X with nvidia drivers and an unpatched nvclock, the fan speed is changed for a brief moment before nvidia regulates it back to 35%).

Then, the follow-up would be to patch nvclock like I explain in the other post, compile and try it to reduce your fan speed. If it works, we should be able to find the right configuration file where to put it so that it gets called twice whenever you leave X.

I've posted the patch here:
French-speaking reader can visit Les Contrées du Rêve
lancelot2 is offline   Reply With Quote