Jump to content

Nvidia-Iron-Fist Gong Fu Class 1 (v.0.9)


SoulSe
 Share

Recommended Posts

* Please note that classes are conducted in Gentoo, however users speaking other distros (especially Mandrake) are welcome and will benefit from the world of Nvidia Gong Fu. Please feel free to add to this class, especially if you know any distro-specific fixes for some of my tips. This is version 0.9 of the class, it will be revised once I have my own weapon handy *

 

- Experienced warriors and practitioners of Nvida Gong Fu might find class one to be a frustrating rehash, but will still find a few surprises -

 

Welcome to class one, please warm up and prepare to execute the following introductory staff routine.

 

Nvidia cards are renowned as the best supported by Linux, which is why most of us use one. Most junior-warriors will install the Linux Nvidia drivers, change the device section of the XF86Config file to use the "nvidia" driver and leave it at that. Fair enough. It works. But a warrior wishing to further his/her studies should consider the following steps. Better performance is what we're after. Say it to yourself: Better Performance.

 

Direct Rendering - Where you're at

 

The first thing to make sure of is that your Direct Rendering (or Hardware Rendering) is working. This means that your Nvidia card is doing all of the 3d processing as opposed to it being handled by software (which is slow and a waste of time/money since you payed extra for a card that can do it).

 

Step 1 is to execute the following:

$ glxinfo |more

And look for a line that says something along the lines of "Direct Rendering: Yes"

 

If it says 'no' make sure that your nividia drivers are installed properly and edit your /etc/X11/XF86Config file to make sure that it contains the line load "glx" towards the beginning of the file. It might be there already, but commented out with a # - so remove the hash. Reload X (ctrl+alt+esc). Check it now. If it still doesn't work, seek personal help from a more experienced practitioner :cheesy:

 

Once Direct Rendering is working use the following tool to check your performance:

$ glxgears

DO NOT resize the window with the gears spinning in it, this will give in-accurate results and you will suck as warrior. The output of the gears spinning will be different from card to card and also depend on what color-depth you are using. Obviously 24 will be slower then 16.

 

Let's get priming

If you compiled your kernel, recompile it making sure that agpgart is not compiled into the kernel. You don't want/need it. In fact, you want very little compiled into your kernel as such when it comes to your weapon of choice (nvidia card). Just Vesa support for the console, basically.

 

Modern Motherboards have two very handy features for Nvidia Fu warriors, Side-Band Addressing and Fast Writing. So load up your BIOS settings (usually by hitting del at startup) and look for those two settings and enable them. On my ASUS MoBo, Side-Band Addressing is usually on by default and not in the BIOS, so I only had to enable Fast-Writing.

 

Save your BIOS and boot. The next step is to check the status of your card.

$ cat /proc/driver/nvidia/agp/status

Note - this will differ from distribution to distribution, so poke around in /proc if you can't find it.

 

Now, in the list it spits out, make sure that the nvidia opengl libraries (and nothing else) are being used. If they are not, you can use the following command (once again, this differs from distro to distro):

# opengl-update nvidia

Check the card status again and you should now be using the nvidia opengl libraries (getting rid of agpgart in the kernel should've led you there anyway).

 

The next thing to look out for in your card status (from that proc file) is your AGP speed. If you have a 8X card, make sure that your system is utilising it as such (or 4X or whatever your card is) if it isn't, this is another thing to change in your BIOS.

 

Ok, now we're looking for 'ENABLED' in that status list, which should be there if your nvidia drivers are installed properly.

 

Onto the last things to check in your status, make sure that Side Band Addressing and Fast Write are enabled. If they aren't, we need to checkout the file /etc/modules.d/nvidia (Differs from distro to distro and nvidia-driver release as well...) Edit that file to enable Side Band Adressing and Fast Writes (the file should be self explanatory, just un-hash the relevant stuff).

 

Now we need to restart the nvidia module with X shut-down:

# modprobe -r nvidia 
# modprobe nvidia

Now restart X.

 

I think that is all we have time for today. Your performance should be better now, if it isn't - at least everything is working the way it should.

 

In our next class, we will look at our XF86Config files and how to further tweak your nvidia-card using it.

Edited by SoulSe
Link to comment
Share on other sites

Did you encounter stability or any weird issue when enabling SBA and Fast Write?

No, they've been a benefit to me. I have heard of it though, strangely enough, it was from Windows users. I haven't heard of any problems with them in Linux.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...