• Diff for "Hardware/NVIDIA"
  • Immutable Page
  • Info
  • Attachments
Differences between revisions 1 and 16 (spanning 15 versions)
Revision 1 as of 2007-08-21 21:57:42
Size: 3469
Editor: adsl-68-91-108-96
Comment:
Revision 16 as of 2007-08-24 20:40:06
Size: 4042
Editor: adsl-68-91-108-96
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
First, keep in mind that the best way to get a nice graphical experience is to use your monitors native resolution. It is also recommended that you verify that you have direct rendering enabled before you start to setup composite desktop. In a terminal you can type this. General nvidia intro goes here

= Available Drivers =
 * '''Legacy''' (1.0.7xxx)
 * '''New Legacy''' (1.0.96xx)
 * '''Latest''' (1.0.97xx - 100.x.x)

= System Setup =

Some stuff about which drivers can run Xorg (NVIDIA) and which can run Xgl:

See '''["Setup"]'''

= Additional Configuration =
Some of the following options may be worth trying to improve performance or fix bugs:

Not really needed with newer drivers as it is enabled by default at 9746 and newer{{{
Option "RenderAccel" "True" }}}
This option is currently incompatible with SLI and MultiGPU modes.Helps performance{{{
Option "DamageEvents" "True"}}}
Use this one with caution it may NOT work on all systems{{{
Option "UseEvents" "False" }}}

Do NOT use if you have less than 128mb vram and always with Sync2Vblank enabled at nvidia-settings both for OpenGL and XV{{{
Option "TripleBuffer" "True" }}}

Use this one with caution it may NOT work on all systems especially with 6 series GeForce cards(could cause freezes with compiz) but give it a try because it helps performance. It can also break Xinerama {{{
Option "BackingStore" "True" }}}
The option "BackingStore" is a Xorg option not Nvidia. This option is used to enable the server's support for backing store, a mechanism by which pixel data for occluded window regions is remembered by the server thereby alleviating the need to send expose events to X clients when the data needs to be redisplayed. Note that this can significantly increase performance in nVidia TwinView setups.

{i} For further documentation on these settings please refer to the readme file of the particular Nvidia driver you are using. Here is the readme for driver 1.0.9755 http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9755/README/appendix-d.html

= Setup nvidia-settings to start on login =

This information is intended to help you start nvidia-settings options on login.

The fact that we can set AA and FSAA settings using an export command in various locations including manually in a terminal after login or in /etc/init.d/xdm or /etc/profile or /etc/env.d/03opengl or even /home/user/.bashrc, this does not help us with the other options available to us in nvidia-settings, including Cursor Shadows, Vibrance Controls and others. After much searching I have found a solution to this which will enable us to take advantage of all the options in nvidia-settings by executing the settings file itself in our /home/user/.bashrc. To accomplish this of course you will need to have nvidia-settings installed, then using this tool you will need to make the changes you want to the different options. Once this is accomplished you can then edit your local /home/user/.bashrc file and add the following near the top of the file.
Line 4: Line 40:
glxinfo | grep direct if [ $DISPLAY ] && [ $TERM == "dumb" ]; then
# Load nvidia-settings
nvidia-settings -load-config-only > /dev/null 2>&1
fi
Line 6: Line 45:
The response should look like this.
Line 8: Line 46:
{{{
direct rendering: Yes
}}}
If the response is "No" then direct rendering is not enabled and this guide will try and get you on your way. If you still experience problems with direct rendering after following this guide please keep in mind that this is only a general guide. The best source to get anything setup properly in your particular distribution of Linux is to go to the distributions documentation and/or that distributions forum.
Keep in mind this can also be added to /etc/init.d/xdm or /etc/profile to make the settings global. And of course your settings file would have to be in /root. Not the best solution in my opinion for obvious reasons.
Line 13: Line 48:
With driver 100.14.11 and older or 9631 legacy(no info about 7185) under the hood... In your /etc/X11/xorg.conf you should have the following options in order to run composite desktop. Options that are commented "##" at the end have been found to help either quality, performance or stability.
Line 15: Line 49:
{{{
Section "ServerLayout"
Option "AIGLX" "False"
There is also a Texture Filtering option in CCSM you can activate to take advantage of this. In CCSM go to General Options --> Display Settings --> Texture Filter = "BEST"
Line 19: Line 51:
Section "Module"
Load "glx"
#Load "glcore" ## comment this line if it is there
#Load "dri" ## comment this line if it is there
Now you may be wondering where do I find the proper settings for my Nvidia card. The vsync, AA and, FSAA settings can be found in the readme file of your driver. Usually in appendix E.
http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9755/README/appendix-e.html
Line 24: Line 54:
Section "Device"
Option "AddARGBGLXVisuals" "True"
Option "AllowGLXWithComposite" "True"
Option "DisableGLXRootClipping" "True" ## This option is deprecated.
Option "RenderAccel" "True" ## Not really needed with newer drivers as it is enabled by default in newer drivers
Option "DamageEvents" "True" ## This option is currently incompatible with SLI and MultiGPU modes
Option "UseEvents" "False" ## Use this one with caution it may NOT work on all systems
Option "TripleBuffer" "True" ## Do NOT use if you have less than 128mb vram
Option "BackingStore" "True" ## Use this one with caution it may NOT work on all systems (freezes when load beryl-manager) but give it a try because it helps performance] It can also break Xinerama
To understand these settings and figure out how best to set them I recommend reading pages 9-11 here.
http://www.tweakguides.com/Graphics_1.html
Line 34: Line 57:
Section "Extensions"
Option "Composite" "Enable"
Please understand this is only one solution and not the most elegant but I found it to be a simple solution.
Line 37: Line 59:
Section "Screen"
DefaultDepth 24
}}}
That is what is recommended for using composite desktop. For further documentation on these settings please refer to the readme file of the particular Nvidia driver you are using. Here is the readme for driver 9755 http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9755/README/appendix-d.html

The option "BackingStore" is a Xorg option not Nvidia. This option is used to enable the server's support for backing store, a mechanism by which pixel data for occluded window regions is remembered by the server thereby alleviating the need to send expose events to X clients when the data needs to be redisplayed. Note that this can significantly increase performance in nVidia TwinView setups.
----------
If you would like to make further changes to improve the graphics performance here is a few suggestions.

(!) If you look in your computer bios and see a MTRR setting, make sure it is set to "DISCRETE"

If you have an AGP card add the following options in your modprobe.conf file or any name this file has in your distro:

options nvidia NVreg_EnableAGPSBA=1 NVreg_EnableAGPFW=1 NVreg_EnableBrightnessControl=1 NVreg_DevicesConnected=1 NVreg_VbiosFromROM=1 NVreg_SaveVBios=1 NVreg_SoftEDIDs=0 NVreg_VideoMemoryTypeOverride=0 NVreg_NvAGP=3 NVreg_ReqAGPRate=8->(8=for 8X AGP, 4=for 4X AGP)

Copy them as they are. They are typed correctly!
(!) When FSAA is enabled (the {{{__GL_FSAA_MODE}}} environment variable is set to a value that enables FSAA and a multisample visual is chosen), the rendering may be corrupted when resizing the window.

General nvidia intro goes here

Available Drivers

  • Legacy (1.0.7xxx)

  • New Legacy (1.0.96xx)

  • Latest (1.0.97xx - 100.x.x)

System Setup

Some stuff about which drivers can run Xorg (NVIDIA) and which can run Xgl:

See ["Setup"]

Additional Configuration

Some of the following options may be worth trying to improve performance or fix bugs:

Not really needed with newer drivers as it is enabled by default at 9746 and newer

Option "RenderAccel" "True" 

This option is currently incompatible with SLI and MultiGPU modes.Helps performance

Option "DamageEvents" "True"

Use this one with caution it may NOT work on all systems

Option "UseEvents" "False" 

Do NOT use if you have less than 128mb vram and always with Sync2Vblank enabled at nvidia-settings both for OpenGL and XV

Option "TripleBuffer" "True" 

Use this one with caution it may NOT work on all systems especially with 6 series GeForce cards(could cause freezes with compiz) but give it a try because it helps performance. It can also break Xinerama

Option "BackingStore" "True" 

The option "BackingStore" is a Xorg option not Nvidia. This option is used to enable the server's support for backing store, a mechanism by which pixel data for occluded window regions is remembered by the server thereby alleviating the need to send expose events to X clients when the data needs to be redisplayed. Note that this can significantly increase performance in nVidia TwinView setups.

{i} For further documentation on these settings please refer to the readme file of the particular Nvidia driver you are using. Here is the readme for driver 1.0.9755 http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9755/README/appendix-d.html

Setup nvidia-settings to start on login

This information is intended to help you start nvidia-settings options on login.

The fact that we can set AA and FSAA settings using an export command in various locations including manually in a terminal after login or in /etc/init.d/xdm or /etc/profile or /etc/env.d/03opengl or even /home/user/.bashrc, this does not help us with the other options available to us in nvidia-settings, including Cursor Shadows, Vibrance Controls and others. After much searching I have found a solution to this which will enable us to take advantage of all the options in nvidia-settings by executing the settings file itself in our /home/user/.bashrc. To accomplish this of course you will need to have nvidia-settings installed, then using this tool you will need to make the changes you want to the different options. Once this is accomplished you can then edit your local /home/user/.bashrc file and add the following near the top of the file.

if [ $DISPLAY ] && [ $TERM == "dumb" ]; then
# Load nvidia-settings
nvidia-settings -load-config-only > /dev/null 2>&1
fi

Keep in mind this can also be added to /etc/init.d/xdm or /etc/profile to make the settings global. And of course your settings file would have to be in /root. Not the best solution in my opinion for obvious reasons.

There is also a Texture Filtering option in CCSM you can activate to take advantage of this. In CCSM go to General Options --> Display Settings --> Texture Filter = "BEST"

Now you may be wondering where do I find the proper settings for my Nvidia card. The vsync, AA and, FSAA settings can be found in the readme file of your driver. Usually in appendix E. http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9755/README/appendix-e.html

To understand these settings and figure out how best to set them I recommend reading pages 9-11 here. http://www.tweakguides.com/Graphics_1.html

Please understand this is only one solution and not the most elegant but I found it to be a simple solution.

(!) When FSAA is enabled (the __GL_FSAA_MODE environment variable is set to a value that enables FSAA and a multisample visual is chosen), the rendering may be corrupted when resizing the window.

Hardware/NVIDIA (last edited 2010-07-27 05:24:55 by 124-169-107-122)