NVIDIA (Italiano)

From ArchWiki
Revision as of 21:08, 21 March 2010 by Simandr (talk | contribs) (Let the GPU set its own performance level (based on temperature))
Jump to: navigation, search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Tango-preferences-desktop-locale.pngThis article or section needs to be translated.Tango-preferences-desktop-locale.png

Notes: please use the first argument of the template to provide more detailed indications. (Discuss in Talk:NVIDIA (Italiano)#)

Come installare i Driver Nvidia con pacman

Informazioni dal Responsabile del pacchetto tpowa

Il pacchetto è solo per quelle persone che usano un kernel di arch precompilato! È stato testato solo con il kernel 2.6 e xorg. Per gli utenti che utilizzano kernel multipli, sarà necessario installare il pacchetto nvidia per ogni kernel utilizzato.

Installazione dei driver

Per installare questi driver con pacman, è necessario avere il repository extra abilitato. Uscire poi dal Server X, altrimenti pacman non riuscirà a completare l'installazione e i driver non funzioneranno! I comandi da eseguire come utente root, sono:

pacman -S nvidia ## (per le schede grafiche più recenti)
pacman -S nvidia-96xx o pacman -S nvidia-173xx (per le schede grafiche più datate)

Per le schede grafiche più recenti potrebbe essere necessario installare nvidia-beta da AUR, perchè gli attuali driver stabili potrebbero non essere adatti. (Si può controllare il file /usr/share/doc/nvidia/supported-cards.txt per controllare se la vostra scheda video è supportata)

Se si utilizza il kernel -mm, adeguare il comando.

Consultare il README di nVidia per i dettagli su quali schede sono supportate dai driver più recenti (ad oggi 28 gennaio, i driver 180.22).

Configurare il Server X

Ora sarà necessario modificare il file di configurazione di Xorg, il famoso /etc/X11/xorg.conf: Nella sezione "Module" bisognerà commentare o eliminare le voci: GLcore e DRI

Aggiungere alla sezione "Module" la riga

Load "glx"

Controllare poi di NON avere questa linea

 Load           "type1"

nella sezione "Module" poiché le recenti versioni di xorg-server non includono il modulo font type1 (completamente sostituito da freetype).

Eliminare o commentare completamente anche l'eventuale sezione Section DRI:

#Section "DRI"
# Mode 0666
#EndSection

Infine, cambiamo la dicitura del driver da utilizzare, passando da Driver "nv" o Driver "vesa" a Driver "nvidia". Se esiste, sarà necessario disattivare l'opzione Chipset (necessaria solo per i driver nv).

Questo passi sono per una configurazione base, se avete bisogno di opzioni più avanzate provate a dare un'occhiata al file /usr/share/doc/nvidia/README

In alternativa, si può anche eseguire l'utility

nvidia-xconfig

Per ulteriori informazioni, fare riferimento alla pagina Installare e configurare Xorg.

Abilitare il Composite in Xorg

Fare riferimento al wiki Composite per istruzioni più dettagliate.

Modificare il rc.conf file di Arch

Richiesto solo per i driver nvidia-71xx e per il kernel >=2.6.13! È necessario aggiungere nvidia alla sezione MODULES di /etc/rc.conf (non ce ne è bisogno se si utilizza xorg e udev).

Problemi che potrebbero verificarsi

Specifiche per Nvidia

Xorg: Rimuovere /usr/X11R6 perchè può creare problemi durante l'installazione. Accertarsi anche di aver installato pkgconfig. L'installatore NVIDIA usa pkgconfig per determinare dove sono installati i moduli di Xorg.

Se le prestazione 3D sono scarse dai un occhiata a /usr/lib/libGL.so.1, /usr/lib/libGL.so, /usr/lib/libGLcore.so.1. Forse sono collegati erroneamente a mesa o a qualcos'altro. Prova a reinstallarli con pacman -S nvidia.

Quando si riceve questo messaggio mentre si tenta di avviare un applicazione OpenGL (ad esempio enemy-territory, o glxgears):

Error: Could not open /dev/nvidiactl because the permissions are too
restrictive. Please see the FREQUENTLY ASKED QUESTIONS 
section of /usr/share/doc/NVIDIA_GLX-1.0/README 
for steps to correct.

Aggiungere il proprio utente al gruppo video usando gpasswd -a yourusername video Add yourself to the video group using gpasswd -a yourusername video (non dimenticarti di effettuare un logout/login o di eseguire: source /etc/profile).

Specifiche per Arch

Aggiornamento di GCC: È necessario compilare il modulo con il compilatore che è stato utilizzato per il kernel altrimenti si potrebbe fallire. Un semplice pacman -S nvidia dovrebbe farlo, senò attendere una nuovo rilascio del kernel e rimanere con il vecchio kernel e gcc.

Aggiornamento del kernel: Dopo gli aggiornamenti del kernel sarà necessario reinstallare il driver.

Strumento di configurazione del driver

Il nuovo strumento di configurazione per i driver nvidia è chiamato 'nvidia-settings' Non si deve usarlo per forza perchè è solo un accessorio!
Per ulteriori informazioni circa l'utilizzo, date un'occhiata al seguente documento:
/usr/share/doc/NVIDIA_GLX-1.0/nvidia-settings-user-guide.txt
Per utilizzare questo strumento è necessario installare le gtk2 con "pacman -S gtk2".

NOTA: Se si verificano problemi come blocchi del Server X durante l'esecuzione dello strumento dovete eliminare .nvidia-settings-rc dalla vostra home.

Avvio automatico di Nvidia-Settings: Potrebbe essere utile applicare le opzioni scelte usando nvidia-settings all'avvio, in primo luogo eseguire nvidia-settings almeno una volta al fine di ripristinare le impostazioni. Il file di configurazione è memorizzato in ~/.nvidia-settings-rc. Quindi aggiungere la seguente riga all'avvio del vostro DE:

nvidia-settings --load-config-only

Problemi noti

Se si verificano crash prova a disabilitare l'opzione RenderAccel "True".

Se hai usato una versione differente di gcc per installare i driver nvidia rispetto a quella usata per compilare il kernel guarda come installare il kernel nel metodo tradizionale ma ricordati di eseguire export IGNORE_CC_MISMATCH=1.

Se avete commenti sul pacchetto vi invitiamo a postare qui: http://bbs.archlinux.org/viewtopic.php?t=10692 Se hai un problema con i driver un'occhiata al forum nvidia: http://www.nvnews.net/vbulletin/forumdisplay.php?s=&forumid=14 Per un Changelog vi invitiamo a guardare qui: http://www.nvidia.com/object/linux_display_ia32_1.0-8762.html

Nota: si prega di non modificare la parte sopra senza avermelo prima notificato.

Cattive prestazioni dopo l'installazione dei nuovi driver nvidia

Se noti che i fps sono molto bassi rispetto ai driver precendenti controlla se hai il Direct Rendering attivo. Puoi farlo con:

glxinfo | grep direct

Se il risultato è: direct rendering: No allora questo è il tuo problema. Controlla se hai le stesse versioni di glx per il client e il server così:

glxinfo | egrep "glx (vendor|version)"

E se noti venditori e versioni diverse per il client e il server esegui questo:

ln -fs /usr/lib/libGL.so.$VER /usr/X11R6/lib/libGL.so
ln -fs /usr/lib/libGL.so.$VER /usr/X11R6/lib/libGL.so.1
ln -fs /usr/lib/libGL.so.$VER /usr/lib/libGL.so.1.2

Dove $ VER è la versione del pacchetto nvidia, che si sta utilizzando. Puoi controllare con nvidia-settings

Questo è tutto. Ora riavviare il Server X e dovresti avere una normale accellerazione.


Ottimizzare i driver NVIDIA

Apri /etc/X11/xorg.conf o /etc/X11/XFree86Config con il tuo editor a scelta e provare le seguenti opzioni per migliorare le prestazioni. Non tutte le opzioni potrebbero funzionare per il vostro sistema, provate con la massima attenzione e fate sempre un backup del file di configurazione.

Disabilitare il logo NVIDIA all'avvio

Sotto la sezione Device aggiungere l'opzione "NoLogo"

Option "NoLogo" "True"

Abilitare l'accellerazione hardware

Nella sezione Device aggiungere l'opzione "RenderAccel" Option.

Option "RenderAccel" "True"

NOTA: RenderAccel è abilitata di default dalla versione dei driver 9746.

Bypassare l'individuazione del monitor

L'opzione "ConnectedMonitor" in Device permette di disabilitare l'individuazione del monitor quanto si avvia il Server X. Questo potrebbe far risparmiare alcuni secondi all'avvio. Le opzioni disponibili sono: "CRT" (tubo catodico), "DFP" (schermo piatto), o "TV" (televisione).

La seguente dichiarazione forza i driver NVIDIA ad usare i monitor a schermo piatto.

Option "ConnectedMonitor" "DFP"

NOTA: usa "CRT" per tutte le connessioni analogiche VGA a 15 pin (anche se si dispone di uno schermo piatto). "DFP" è destinato solo per connessioni digitali DVI!

Abilitare il TripleBuffer

Abilitare l'uso del triple buffering aggiungendo nella sezione Device l'opzione "TripleBuffer".

Option "TripleBuffer" "True"

Utilizza questa opzione se la tua GPU è ricca di ram (128MB o più) e in combinazione con "Sync to VBlank". Puoi abilitare sync to vblank in nvidia-settings.

Abilitare il BackingStore

Questa opzione è usata per abilitare il supporto del server X al backing store, un meccanismo tramite il quale i pixel delle finestre messe in secondo piano vengono memorizzate dal server così da alleviare il bisogno di inviare eventi di esposizione ai client X quando quelle aree devono essere rivisualizzate. Backingstore non è un opzione legata ai driver NVIDIA, ma allo stesso server X. Anche gli utenti ATI potrebbero beneficiare di questa opzione. Aggiungete sotto la sezione Device:

Option "BackingStore" "True"

Usare gli eventi di sistema

Dal file LEGGIMI dei driver NVIDIA: "Usa gli eventi di sistema per dare notifica ad X quando un client ha compiuto il direct rendering su una finestra che necessita di essere composta." Qualsiasi cosa identifichi, aiuta ad aumentare le prestazioni. Questa opzione è al momento incompatibile con le tecnologie SLI e Multi-GPU.

Nella sezione Device aggiungete:

Option "DamageEvents" "True"

Questa opzione è abilitata di default nei driver più recenti.

Abilitare il risparmio energetico

Per un pianeta più pulito (non strettamente legato ai soli utenti NVIDIA). Nella sezione Monitor aggiungete:

Option "DPMS" "True"

Forzare il livello di performance Powermizer (per portatili)

Nel vostro file xorg.conf, aggiungete le seguenti linee nella sezione Device

#force Powermizer to a certain level at all times
# level 0x1 = highest
# level 0x2 = med
# level 0x3 = lowest
Option "RegistryDwords" "PowerMizerLevelAC=0x3"
Option	"RegistryDwords"	"PowerMizerLevel=0x3"

Lasciare che la GPU imposti automaticamente il livello di performance (basato sulla temperatura)

Nel vostro file xorg.conf, aggiungete la seguente linea nella sezione Device

Option "RegistryDwords" "PerfLevelSrc=0x3333"

Disable vblank interrupts (for laptops)

When running the interrupt detection utility powertop, it is seen that the nvidia driver will generate an interrupt for every vblank. to disable, place in the Device section:

Option         "OnDemandVBlankInterrupts" "True"

This will reduce interrupts to about one or two per second.

Enable overclocking via nvidia-settings

To enable overclocking, place the following line in the "device" section:

Option         "Coolbits" "1"

This will enable on the fly overclocking by running nvidia-settings inside X.

Please note that overclocking may damage your hardware and that no responsibility may be placed on the authors of this page due to any damage to any information technology equipment from operating products out of specifications set by the manufacturer.

Further readings

Using TV-out on your NVIDIA card

Good article on the subject can be found from:

 http://en.wikibooks.org/wiki/NVidia/TV-OUT

Why is the refresh rate not reported correctly by utilities that use the XRandR X extension (e.g., the GNOME "Screen Resolution Preferences" panel, `xrandr -q`, etc)?

The XRandR X extension is not presently aware of multiple display devices on a single X screen; it only sees the MetaMode bounding box, which may contain one or more actual modes. This means that if multiple MetaModes have the same bounding box, XRandR will not be able to distinguish between them.

In order to support DynamicTwinView, the NVIDIA X driver must make each MetaMode appear to be unique to XRandR. Presently, the NVIDIA X driver accomplishes this by using the refresh rate as a unique identifier.

You can use `nvidia-settings -q RefreshRate` to query the actual refresh rate on each display device.

The XRandR extension is currently being redesigned by the X.Org community, so the refresh rate workaround may be removed at some point in the future.

This workaround can also be disabled by setting the "DynamicTwinView" X configuration option to FALSE, which will disable NV-CONTROL support for manipulating MetaModes, but will cause the XRandR and XF86VidMode visible refresh rate to be accurate.

How to install NVIDIA Driver with custom kernel

It's an advantage to know how the ABS system works by reading some of the other wiki pages about it, first:


We will create our own pacman package quickly by using ABS, which will build the module for the currently running kernel:

Make a temporary directory for creating our new package:

 mkdir -p /var/abs/local/

Make a copy of the nvidia package directory:

 cp -r /var/abs/extra/nvidia/ /var/abs/local/

Go into our temporary nvidia directory:

 cd /var/abs/local/nvidia

We need to edit the two files nvidia.install and the PKGBUILD file, so they contain the right kernel version variables, so we don't have to move it from the stock kernel /lib/modules/2.6.xx-ARCH directory.

You can get your kernel version and local version name if you type:

 uname -r
  • In nvidia.install replace the KERNEL_VERSION="2.6.xx-ARCH" variable with your kernel version, such as KERNEL_VERSION="2.6.22.6" or KERNEL_VERSION"2.6.22.6-custom" depending on what your kernels version is and local version text/number. Do this for all instances of the version number within this file.
  • In PKGBUILD change the _kernver='2.6.xx-ARCH' variable to match your kernel version again, like above.
  • If you have more than one kernel coexisting in parallel with another, (such as a custom kernel alongside the default -ARCH kernel) change the "pkgname=nvidia" variable in the PKGBUILD to a unique identifier, such as nvidia-2622 or nvidia-custom. This will allow both kernels to use the nvidia module, since the custom nvidia module has a different package name and will not overwrite the original.

Then do:

 makepkg -i -c

.. Now it will automatically build the NVIDIA module for your custom kernel and clean up the leftover files from creating the package. Enjoy!