• Diff for "Hardware/NVIDIA"
  • Immutable Page
  • Info
  • Attachments
Differences between revisions 31 and 33 (spanning 2 versions)
Revision 31 as of 2007-12-25 20:07:27
Size: 4757
Editor: pool-68-162-138-187
Comment:
Revision 33 as of 2008-03-30 18:34:21
Size: 5556
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
[[TableOfContents]] <<TableOfContents>>
Line 6: Line 6:
CompizFusion requires compatible hardware with driver support and sufficient performance.
Compiz will only work with graphic cards with at least 64 MB of memory, and whose drivers are capable of supporting the X Composite extension and the GL_EXT_texture_from_pixmap OpenGL extension. But even if the required extensions are not supported by your card's driver, software solutions such as Xgl may be able to provide them.
Line 27: Line 28:
For information about which drivers can run '''Xorg''' (using the ''nvidia'' driver) and which can run '''Xgl''', see '''["Setup"]'''. For information about whether your driver can be used directly with the X.Org server or must be used with Xgl to provide support for missing functionality, please refer to the '''[[Setup]]''' article.
Line 30: Line 31:
Line 32: Line 34:
 * This option is not really needed with newer drivers as it is enabled by default in versions 9746 and newer. {{{  * The following option improves performance. As of nvidia driver version 1.0-9746, it has been enabled by default. {{{
Line 34: Line 36:
 * This option is necessary for nvidia drivers prior to 100.xx. {{{  * The following option is necessary to make window borders visible with nvidia driver versions prior to 100.xx. {{{
Line 36: Line 38:
 * This option helps performance. It is currently incompatible with SLI and MultiGPU modes. {{{  * The following option improves performance. It is currently incompatible with SLI and MultiGPU modes. As of nvidia driver version 100.14.09, it has been enabled by default. {{{
Line 38: Line 40:
 * Use this option with caution as it may '''not''' work on all systems. {{{  * Use the following option with caution as it may '''not''' work on all systems. {{{
Line 40: Line 42:
 * Do NOT use this option if you have less than 128MB of video RAM, and always use it with Sync2Vblank enabled in {{{nvidia-settings}}} both for OpenGL and XV. {{{  * Do NOT use the following option if you have less than 128MB of video memory, and always use it with ''Sync to VBlank'' enabled in {{{nvidia-settings}}} both for OpenGL and XV. {{{
Line 42: Line 44:
 * Use this options with caution as it may '''not''' work on all systems, especially with 6 series GeForce cards (it is known to cause freezes with compiz) but give it a try because it helps performance. It can also break Xinerama. {{{  * Use the following option with caution as it may '''not''' work on all systems, especially with 6 series !GeForce cards (it is known to cause freezes with compiz) but give it a try because it helps performance. It can also break Xinerama. {{{
Line 44: Line 46:
 The ''!BackingStore'' option is an Xorg option, not an nVidia option. It 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.  The ''!BackingStore'' option is an option provided by the X.Org server, not specific to the nvidia driver. It 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.
Line 47: Line 49:
{i} For further documentation on these settings please refer to the readme file of the particular Nvidia driver you are using. The README file for driver version 100.14.19 can be found here: http://us.download.nvidia.com/XFree86/Linux-x86/100.14.19/README/appendix-b.html {i} For further information about these settings, please refer to the README file of the particular nvidia driver version you are using. It can be found on your hard drive at `/usr/share/doc/NVIDIA_GLX-1.0/README.txt` , or online at `http://us.download.nvidia.com/XFree86/Linux-x86/DRIVER_VERSION_NUMBER/README/chapter-11.html` .
Line 50: Line 52:
Line 65: Line 68:
# Load nvidia-settings
nvidia-settings -load-config-only > /dev/null 2>&1
    # Load nvidia-settings
    nvidia-settings -load-config-only > /dev/null 2>&1
Line 72: Line 75:
There is also a ''Texture Filtering'' option in '''["CCSM"]''' which can be adjusted. In CCSM, go to '''[:GeneralOptions:General Options]''' --> ''Display Settings'' --> ''Texture Filter'' --> '''Best'''. There is also a ''Texture Filtering'' option in '''[[CCSM]]''' which can be adjusted. From CCSM, go to '''[[GeneralOptions|General Options]]''' -> ''Display Settings'' -> ''Texture Filter'' -> '''Best'''.
Line 75: Line 78:
The vsync, AA and, FSAA settings can be found in the [http://us.download.nvidia.com/XFree86/Linux-x86/100.14.19/README/chapter-11.html README] file for your driver.
Line 77: Line 79:
To understand these settings and figure out how best to set them, pages 9 through 11 of the following guide are recommended: The environment variables you can set to adjust the behaviour of VBlank syncing, anisotropic filtering, and full-screen anti-aliasing, as well as the meaning of the values you can set, are documented in Chapter 11 of the README file for your driver. It can be found on your hard drive at `/usr/share/doc/NVIDIA_GLX-1.0/README.txt` , or online at `http://us.download.nvidia.com/XFree86/Linux-x86/DRIVER_VERSION_NUMBER/README/chapter-11.html` .

To understand these settings and figure out how best to set them, pages 9 through 11 of the following guide is recommended:
Line 80: Line 84:
(!) 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. (!) When full-screen anti-aliasing is enabled and set to a multisampling mode, you may notice visual corruption when resizing a window.

This page needs a suitable introductory statement. It also has sections in need of completion.

Supported Cards

Compiz will only work with graphic cards with at least 64 MB of memory, and whose drivers are capable of supporting the X Composite extension and the GL_EXT_texture_from_pixmap OpenGL extension. But even if the required extensions are not supported by your card's driver, software solutions such as Xgl may be able to provide them.

Tested OK

Cards tested to work, driver required, and performance notes:

  • (card / driver / notes)

Compatible Specs

Cards theoretically compatible by specs, driver required, and performance notes:

  • (card / driver / notes)

Tested FAIL

Cards tested to fail, driver(s) tested, and specific failures:

  • (card / driver(s) / notes)

Available Drivers

  • Legacy (1.0.7xxx)

  • New Legacy (1.0.96xx)

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

System Setup

For information about whether your driver can be used directly with the X.Org server or must be used with Xgl to provide support for missing functionality, please refer to the Setup article.

Additional Configuration

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

  • The following option improves performance. As of nvidia driver version 1.0-9746, it has been enabled by default.

     Option "RenderAccel" "True" 
  • The following option is necessary to make window borders visible with nvidia driver versions prior to 100.xx.

     Option  "AddARGBGLXVisuals"  "True" 
  • The following option improves performance. It is currently incompatible with SLI and MultiGPU modes. As of nvidia driver version 100.14.09, it has been enabled by default.

     Option "DamageEvents" "True"
  • Use the following option with caution as it may not work on all systems.

     Option "UseEvents" "False" 
  • Do NOT use the following option if you have less than 128MB of video memory, and always use it with Sync to VBlank enabled in nvidia-settings both for OpenGL and XV.

     Option "TripleBuffer" "True" 
  • Use the following option with caution as it may not work on all systems, especially with 6 series GeForce cards (it is known to cause freezes with compiz) but give it a try because it helps performance. It can also break Xinerama.

     Option "BackingStore" "True" 

    The BackingStore option is an option provided by the X.Org server, not specific to the nvidia driver. It 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 information about these settings, please refer to the README file of the particular nvidia driver version you are using. It can be found on your hard drive at /usr/share/doc/NVIDIA_GLX-1.0/README.txt , or online at http://us.download.nvidia.com/XFree86/Linux-x86/DRIVER_VERSION_NUMBER/README/chapter-11.html .

Setting up nvidia-settings to start on login

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

We can set AA and FSAA settings using an export command in various locations, including the following:

  • manually in a terminal after login
  • in one of the following files:
    • /etc/init.d/xdm

    • /etc/profile

    • /etc/env.d/03opengl

    • /home/user/.bashrc

However, this does not help us with the other options available to us in nvidia-settings, including Cursor Shadows, Vibrance Controls, and others.

To address this issue, it is possible to execute the settings file itself in /home/user/.bashrc. To accomplish this, you will need to have nvidia-settings installed. It can then be used to set the desired options. Once this is done, 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; however, your settings file would also have to be in /root, making this second approach less than ideal.

There is also a Texture Filtering option in CCSM which can be adjusted. From CCSM, go to General Options -> Display Settings -> Texture Filter -> Best.

Finding the correct settings for your card

The environment variables you can set to adjust the behaviour of VBlank syncing, anisotropic filtering, and full-screen anti-aliasing, as well as the meaning of the values you can set, are documented in Chapter 11 of the README file for your driver. It can be found on your hard drive at /usr/share/doc/NVIDIA_GLX-1.0/README.txt , or online at http://us.download.nvidia.com/XFree86/Linux-x86/DRIVER_VERSION_NUMBER/README/chapter-11.html .

To understand these settings and figure out how best to set them, pages 9 through 11 of the following guide is recommended: http://www.tweakguides.com/Graphics_1.html

(!) When full-screen anti-aliasing is enabled and set to a multisampling mode, you may notice visual corruption when resizing a window.

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