====== Installer et configurer une carte NVIDIA ======
===== Bases =====
==== Vérifications ====
Pour en installer une il vous faut :
* une carte nvidia 8-)
* 20 minutes
* xorg (le serveur graphique)
Pour que tout se passe bien, passez en init 3
telinit 3
==== Installation des pilotes (non libres) ====
Ensuite installez les drivers :
=== Si vous avez une carte récente : (>geforce2) ===
pacman -S nvidia
__Note__ : sous avez un kernel autre que le kernel de base, installez le paquet correspondant c'est à dire nvidia-ck nvidia-beyond ... \\
__Note2__ : si vous avez un kernel custom que vous avez fait avec vos ptits doigs agiles installez le pkg de wain se trouvant sur le repo archlinuxfr :
pacman -S nvidia-driver
Et rajoutez "nvidia" dans votre liste de DAEMONS du fichier /etc/rc.conf
=== Si vous avez une ancienne carte : ===
pacman -S nvidia-legacy
__Note__ : sous avez un kernel autre que le kernel de base, installez le paquet correspondant c'est à dire nvidia-legacy-ck nvidia-legacy-beyond ...
==== Configuration de xorg ====
Si votre fichier n'est pas encore là :
pacman -S hwd
hwd -u
hwd -xa
Editez la section keyboard pour avoir les bonnes valeurs dans :
Option "XkbLayout" "fr"
Option "XkbVariant" ""
A l'aide de votre éditeur préféré, éditez le fichier /etc/X11/xorg.conf comme suit :
# This loads the GLX module
Load "glx"
# This loads the DRI module
# Load "dri"
...
Section "Device"
Identifier "Card0"
Driver "nvidia"
EndSection
...
#Section "DRI"
# Mode 0666
#EndSection
Vérifions que ça fonctionne en chargant le module nvidia :
Si vous utilisez les drivers nvidia / nvidia-legacy (les paquets officiels arch)
modprobe nvidia
Si vous utilisez nvidia-driver
/etc/rc.d/nvidia start
Puis on lance xorg :
startx
Si il y'a un erreur du genre : xterm/xclock not found installez le paquet **xorg-client**
===== Configuration avancée =====
==== Support de Beryl ====
[[:howto:beryl|Beryl nécessite le support du rendu "GLX_texture_from_pixmap"]], désormais inclus dans le driver nvidia.\\
Pour l'activer, ajoutez ces deux options:\\
Section "Device"
Driver "nvidia"
[...]
Option "TripleBuffer" "True"
Option "AddARGBGLXVisuals"
EndSection
[...]
Section "Extensions"
Option "Composite" "Enable"
EndSection
==== FastWrite / SBA ====
Bon maintenant faisons cracher ses tripes à la carte vidéo LOL
=== Vérifications ===
Votre carte supporte-t-elle une de ces 2 options ou les 2 ?\\
__ATTENTION__ : cela ne fonctionne qu'avec des Geforces et pas toutes
cat /proc/driver/nvidia/agp/card
Fast Writes: Supported
SBA: Supported
AGP Rates: 8x 4x
Registers: 0x1f000e1b:0x1f004312
Cette commande vous permet de voir quels options sont supportées \\
Si aucune passez votre chemin :-/
=== Activations des options supportées ===
Editez votre fichier /etc/modprobe.conf
alias char-major-195 nvidia
alias /dev/nvidiactl char-major-195
options nvidia NVreg_EnableAGPSBA=1 NVreg_EnableAGPFW=1
__Note__ : Evidemment si le FastWrite n'est pas supporté : **NVreg_EnableAGPFW=0** et si le SBA n'est pas supporté : **NVreg_EnableAGPSBA=0** n' essayez pas de forcer ça fonctionnera pas !
Editez maintenant le fichier /etc/X11/xorg.conf comme suit :
Section "Device"
Identifier "Card0"
Driver "nvidia"
BusID "PCI:01:00:0" #lspci pour savoir
VideoRam 262144 #taille de la ram (non obligatoire)
Option "RenderAccel" "true" #pour l'extention composite
Option "NoLogo" "1" #"0" pas de logo au lancement de X
Option "AllowGLXWithComposite" "True" #permet d'avoir l'extention composite + GLX
Option "backingstore" "true"
Option "DPMS" #gestion d'énergie
Option "NvAGP" "3" #vitesse du bus AGP
EndSection
Pour les options AGP voir : [[http://download.nvidia.com/XFree86/Linux-x86/1.0-9626/README/appendix-f.html]]
Option "NvAgp" "0" ... disables AGP support
Option "NvAgp" "1" ... use NVAGP, if possible
Option "NvAgp" "2" ... use AGPGART, if possible
Option "NvAGP" "3" ... try AGPGART; if that fails, try NVAGP
A la fin de votre /etc/X11/xorg.conf, rajoutez :
Section "Extensions"
Option "Composite" "Enable"
Option "RENDER" "Enable"
Option "DAMAGE" "Enable"
EndSection
=== ça marche (tm) ? ===
Pour savoir :
Pour une carte AGP
cat /proc/driver/nvidia/agp/status
Pour une PCI-Express
cat /proc/driver/nvidia/registry
la sortie doit ressembler à ça :
Status: Enabled
Driver: AGPGART
AGP Rate: 8x
Fast Writes: Enabled
SBA: Enabled
On voit que l'AGP est passé à 8x et le FastWrite / Side Band Addressing sont activés !!
==== Variables d'environnement ====
Vous pouvez controlez le rendu de votre carte avec les variables d'environnements :
export __GL_FSAA_MODE=1
export __GL_LOG_MAX_ANISO=2
export __GL_SYNC_TO_VBLANK=1
Vous pouvez mettre ces codes dans votre .xinitrc / /etc/profile ...
La liste complète des variables ici : [[http://download.nvidia.com/XFree86/Linux-x86/1.0-9626/README/appendix-e.html]]
==== Overclock ====
Et si on veux griller du pinguin, on peux même activé l'overclock !\\
/!\ A effectuer a vos risques et périls ! Toutes cartes mortes du a une surchauffe de composants ne sera pas remboursée !\\
En vrai vous ne craignez pas grand chose si vous êtes prudent =)\\
Il faut rajouter une option Coolbits dans votre /etc/X11/xorg.conf\\
Section "Device"
Identifier "Card0"
Driver "nvidia"
[...]
Option "Coolbits" "1"
Il suffit ensuite de relancer votre X (ctrl +alt +backspace)
Lorsque vous lancerez nvidia-settings (dans les menus ou en console), un nouvel onglet "overclock" devrait apparaitre, et vous pourrez augmenter les frequences de la RAM et du GPU de carte graphique (un outils de test est integré). Vous pouvez sans mal augmenter de quelques Mhz, et ensuite passer à une periode de tests ;)
==== Bi-écran powered ====
Tiens j'ai 2 sorties sur ma carte qui roxe déjà sa race ... (marche même quand y'a une sortie VGA et une DVI ! merci aux transciever DVI/VGA)
Sous nvidia c'est facile d'avoir 2 écrans en même temps, il suffit d'éditer /etc/X11/xorg.conf comme suit :
Section "Device"
Identifier "Card0"
Driver "nvidia"
...
#Option bi-écran
Option "TwinView"
Option "SecondMonitorHorizSync" "40-80" #Raffraichissement horizontal du second moniteur
Option "SecondMonitorVertRefresh" "50-60" #Raffraichissement vertical du second moniteur
Option "TwinViewOrientation" "RightOf" #Emplacement du second moniteur
Option "MetaModes" "1600x1200,1280x1024;1024x768,NULL;1280x1024,NULL;800x600,NULL;1600x1200,NULL" #Différents modes
Option "ConnectedMonitor" "CRT-0, CRT-1" #Types de moniteurs connectés
EndSection
Explications:
Option "TwinView" : obligatoire sinon ça fonctionnera pas\\
Option "SecondMonitorHorizSync" Fréquence de rafraichissement horizontal de votre second moniteur ( mettez des fréquences compatibles ... )\\
Option "SecondMonitorVertRefresh" Fréquence de rafraichissement vertical de votre second moniteur ( mettez des fréquences compatibles aussi... )\\
Option "TwinViewOrientation" Où se trouve le 2ème moniteur par rapport au moniteur principal ?\\
* Liste à puce
* RightOf ( à droite )
* LeftOf ( à gauche )
* Above ( au dessus )
* Below ( en dessous )
* Clone ( Affichage identique sur les 2 )
Option "MetaModes" Modes graphiques, exemple:\\
* "1600x1200,1280x1024;" => Ecran 1 en 1600x1200, Ecran 2 en 1280x1024
* "1024x768,NULL;" => modes pour l'OpenGl plein écran sinon vos jeux seront sur les 2 écran en même temps !!!
Option "ConnectedMonitor" déficnition des types de moniteur connectés\\
* CRT-X = Ecran cathodique
* DFP-X = Ecran Plat
Toutes les options twinview : [[http://download.nvidia.com/XFree86/Linux-x86/1.0-9626/README/appendix-g.html]]
Et voilà vous relancez votre serveur X (Ctrl+Alt+Backspace)
===== Liens =====
http://gentoo-wiki.com/HARDWARE_Nvidia_Driver_AGP_FastWrite_and_Side_Band_Addressing (FW / SBA)\\
http://download.nvidia.com/XFree86/Linux-x86/1.0-9626/README/appendix-f.html (Modes AGP)\\
http://download.nvidia.com/XFree86/Linux-x86/1.0-9626/README/appendix-e.html (variables d'environnement)\\
http://download.nvidia.com/XFree86/Linux-x86/1.0-9626/README/appendix-g.html (twinview)\\
http://www.sorgonet.com/linux/nv-online/ (interface de configuration en ligne ... mais faut déjà avoir X)\\
http://forums.archlinux.fr/viewtopic.php?t=33 (post sur xorg-edit ... pareil faut avoir X)\\
--- //[[warnaud@gmail|warnaud]] 06/11/2006 17:44//\\
--- //Skunnyk 06/11/2006 19:04//\\
--- //[[wain@archlinux.fr|wain]] 30/12/2006 18:34//