Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

12.03.2006, 00:33

nVidia 3D-Beschleunigungs Guide

############################
# nVidia 3D-Beschleunigungs Guide #
###########################



Letztes Update: 18.09.2006




Beschreibung:

Viele Gentoo-Nutzer haben einen nVidia-Chipsatz in ihrem System. NVidia bietet spezielle Linuxtreiber um die Geschwindigkeit Ihrer Karte zu erhöhen.
Dieser Guide zeigt euch, wie die Treiber zu installieren und zu konfigurieren sind.



1.0 Was ist 3D Hardware-Beschleunigung und wofür brauche ich es?
2.0 Einführung
3.0 Konfigurieren Ihrer Karte / Kernel-Konfiguration
4.0 Arch-spezifische Bemerkungen
5.0 Weiter mit der Kernelkonfiguration
6.0 Installation der richtigen Treiber
7.0 Den X-Server konfigurieren
8.0 Hinzufügen von Benutzern zur video Gruppe
9.0 Testen Ihrer Karte
10.0 NVidia-Unterstützung aktivieren
11.0 Das NVidia Settings Tool verwenden
12.0 Fehlerbehebung
13.0 Tips!
14.0 Bemerkungen & Quellen


__________________________________________________________________

Liste der unterstützten Grafikkarten
__________________________________________________________________
MfG MyD

2

12.03.2006, 00:34

1.0 Was ist 3D Hardware-Beschleunigung und wofür brauche ich es?

Mit 3D Hardware-Beschleunigung wird dreidimensionales Rendern vom Prozessor der Grafikkarte übernommen, anstatt wertvolle Rechenleistung der CPU für das Darstellen von 3D Bildern abzuzweigen. Dies wird auch als "Hardware-Beschleunigung" bezeichnet, im Gegensatz zur "Software Beschleunigung", wo die CPU mit Hilfe der Mesa Software Bibliotheken das Zeichnen übernimmt. Während Xorg in der Regel 2D Hardware-Beschleunigung unterstützt, gibt es bei der 3D-Beschleunigung einige Lücken. Spiele, 3D-CAD und Modellierungen kommen in der Regel nicht ohne 3D Hardware-Beschleunigung aus.
MfG MyD

3

12.03.2006, 00:38

2.0. Einführung

NVidia gibt seine eigenen Linux-Treiber heraus, die eine hohe Leistung und volle 3D-Beschleunigung bieten. Die Treiber sind in einem Paket enthalten: x11-drivers/nvidia-drivers

Es ist einfach ein Kernelmodul namens nvidia, dass Abhängig zu Ihren Kernelquellen installiert wird und jedes Mal geladen werden muss, wenn Sie die nVidia-Treiber benutzen wollen.
MfG MyD

4

12.03.2006, 00:42

3.0. Konfigurieren Ihrer Karte / Kernel-Konfiguration

Wie oben erwähnt, installiert und läuft der nVidia-Kerneltreiber anhängig von Ihrem aktuellen Kernel. Er wird als Modul erstellt, also macht es Sinn, dass Ihr Kernel das Laden von Kernel-Modulen unterstützt. Wenn Sie genkernel verwendet haben, um Ihren Kernel zu konfigurieren, ist dies bereits geschehen. Wenn nicht, überprüfen Sie die Konfiguration Ihres Kernels noch einmal genau um sicherzustellen, dass die Unterstützung dafür aktiviert ist:

Quellcode

1
2
Loadable module support --->
  [*] Enable loadable module support


Sie müssen außerdem Memory Type Range Register in Ihrem Kernel aktivieren:

Quellcode

1
2
Processor and Features --->
  [*] MTRR (Memory Type Range Register) support
MfG MyD

5

12.03.2006, 00:44

4.0 Arch-spezifische Bemerkungen

Bei x86 und AMD64 Prozessoren erzeugt der kernelinterne Treiber einen Konflikt mit dem Binärtreiber von nVidia. Wollen Sie Ihren Kernel für diese CPUs kompilieren, müssen Sie die kernelinterne Treiberunterstützung wie hier gezeigt komplett entfernen:

Quellcode

1
2
3
4
Device Drivers --->
Graphics Support --->
< >   nVidia Framebuffer Support
< >   nVidia Riva support


Eine gute Framebufferalternative ist VESA:

Quellcode

1
2
3
Device Drivers ---> 
Graphics Support --->
<*>   VESA VGA graphics support


Dann wählen Sie unter "VESA driver type" entweder vesafb oder vesafb-tng aus:

Quellcode

1
2
( ) vesafb
(X) vesafb-tng


Wenn Sie vesafb benutzen, können Sie für weitere Inforamtionen die /usr/src/linux/Documentation/fb/vesafb.txt lesen oder Sie schauen nach Ihrer Frambufferdokumentation unter /usr/src/linux/Documentation/fb/.
MfG MyD

6

12.03.2006, 00:46

5.0 Weiter mit der Kernelkonfiguration

NVidias Module und Bibliotheken sind ist in einem Paket zusammengefasst: x11-drivers/nvidia-drivers.

Basierend auf dem /usr/src/linux Symlink findet das nvidia-drivers Ebuild die Kernelversion automatisch heraus. Bitte stellen Sie sicher, dass dieser Symlink auf die richtigen Quellen verweist und dass der Kernel richtig konfiguriert ist. Bitte beziehen Sie sich auf den Abschnitt Konfiguration des Kernels in diesem Guide.

Wenn Sie gentoo-sources-2.6.17 benutzen, könnte Ihr /usr/src Verzeichnis etwa so ähnlich aussehen:

Quellcode

1
2
3
4
5
6
7
# cd /usr/src
# ls -l
(Überprüfen Sie ob linux auf das richtige Verzeichnis verweist)
lrwxrwxrwx  1 root root   29 26. Jul 19:15 linux -> /usr/src/linux-2.6.17-gentoo/
drwxr-xr-x 20 root root 4096 23. Mai 14:38 linux-2.6.16-gentoo-r3
drwxr-xr-x 20 root root 4096 19. Jun 21:12 linux-2.6.17-gentoo
drwxr-xr-x 19 root root 4096 18. Sep 15:17 linux-2.6.17-gentoo-r8

In der Ausgabe oben sehen Sie, dass der linux Symlink auf den linux-2.6.17-gentoo Kernel verweist.


Wenn der Symlink nicht auf die richtigen Quellen verweist, müssen Sie den Link wie folgt aktualisieren:

Quellcode

1
2
3
# cd /usr/src
# rm linux
# ln -snf linux-2.6.17-gentoo linux
MfG MyD

7

12.03.2006, 00:59

6.0 Installation der richtigen Treiber

Jetzt ist es an der Zeit x11-drivers/nvidia-drivers zu installieren.

Ich würde allen zu den Testing-Treibern raten - einige werden sich fragen - Warum die tesing?
Ein Grund dafür: Weil die neusten Treiber auch die neusten Karten unterstützen.
Aber es gibt noch weitere Gründe die ich jetzt aus Zeit Gründen erst einmal nicht notieren werde.

Um die Testing-Treiber verwendne zu können macht ihr folgendes:

Quellcode

1
2
# nano -w /etc/portage/package.keywords
(falls Datei nicht vorhanden - anlegen!)


und tragt folgendes ein:

Quellcode

1
2
3
x11-drivers/nvidia-drivers
app-admin/eselect-opengl
app-admin/eselect



Installieren der nVidia-Module

Quellcode

1
# emerge nvidia-drivers



Wichtig:
Jedes mal wenn Sie einen neuen Kernel kompilieren oder den aktuellen neu kompilieren, müssen Sie emerge nvidia-drivers ausführen um die nVidia-Module neu zu installieren.

Wenn die Installion beendet ist, führen Sie modprobe nvidia aus, um das Kernel-Modul in den Speicher zu laden.

Quellcode

1
# modprobe nvidia


Um zu verhindern, dass Sie das Modul bei jedem Systemstart manuell laden müssen, möchten Sie vielleicht, dass dies automatisch beim Booten Ihres Systems geschieht. Editieren sie dazu /etc/modules.autoload.d/kernel-2.6 (oder kernel-2.4 abhängig davon welche Kernelversion Sie benutzen) und fügen Sie nvidia hinzu. Vergessen Sie nicht, danach modules-update auszuführen.

Quellcode

1
# modules-update
MfG MyD

8

12.03.2006, 01:01

7.0 Den X-Server konfigurieren

Wenn die passenden Treiber einmal installiert sind, müssen Sie Ihren X-Server (Xorg) konfigurieren, damit er den nvidia Treiber verwendet, anstatt des standard nv Treibers.

Öffnen Sie /etc/X11/xorg.conf mit Ihrem Lieblingseditor (wie nano oder vim) und gehen Sie zum Device Abschnitt. In diesem Abschnitt ändern Sie die Driver Zeile:

Quellcode

1
2
3
4
5
Section "Device"
  Identifier "nVidia Inc. GeForce2"
  Driver     "nvidia"
  VideoRam   65536
EndSection


Dann gehen Sie zum Module Abschnitt und stellen sicher, dass das glx Modul geladen wird, während das dri Modul nicht geladen wird:

Quellcode

1
2
3
4
5
6
Section "Module"
  (...)
  # Load  "dri"
  Load  "glx"
  (...)
EndSection


Stellen Sie danach sicher, dass im Abschnitt Screen die DefaultDepth Einstellung auf 16 oder 24 gesetzt ist, oder dass Sie nur Display Unterabschnitte haben, dessen Depth auf 16 oder 24 gesetzt ist. Ohne dies werden die nvidia-glx Erweiterungen nicht starten.

Quellcode

1
2
3
4
5
6
  Section "Screen"
  (...)
  DefaultDepth 24
  Subsection "Display"
  (...)
  EndSection
MfG MyD

9

12.03.2006, 01:06

8.0 Hinzufügen von Benutzern zur video Gruppe

Sie müssen Ihren Benutzer zur video Gruppe hinzufügen, damit er Zugriff auf die nVidia-Gerätedateien hat:

Quellcode

1
# gpasswd -a Ihr_User video
MfG MyD

10

12.03.2006, 01:09

9.0 Testen Ihrer Karte

Um Ihre nvidia Karte zu testen, starten Sie X und führen Sie den Befehl glxinfo | grep direct aus (als normaler user). Er sollte ausgeben, dass direct rendering aktiviert ist:

Quellcode

1
2
$ glxinfo | grep direct
direct rendering: Yes


Um Ihre FPS anzuzeigen, führen Sie glxgears aus.
MfG MyD

11

12.03.2006, 01:11

10.0 NVidia-Unterstützung aktivieren

Einige Tools, wie mplayer und xine-lib, verwenden ein lokales USE Flag, das "nvidia" heißt. Es aktiviert die Unterstützung für XvMCNVIDIA, hilfreich beim Abspielen von hochaufgelösten Videos. Fügen Sie "nvidia" zu Ihrer USE Variable in /etc/make.conf hinzu oder als USE Flag zu media-video/mplayer und/oder media-libs/xine-lib in /etc/portage/package.use hinzu.

Dann führen Sie ein

Quellcode

1
# emerge -uD --newuse world 

aus, um die Anwendungen neu zu bauen, die von der Änderung des USE Flags profitieren würden.
MfG MyD

12

12.03.2006, 01:13

11.0 Das NVidia Settings Tool verwenden

Seit NVidia Version 1.0.6106 herausbrachte, wird auch ein Tool für Einstellungen mitgeliefert. Dieses Tool erlaubt es Ihnen Grafikeinstellungen zu ändern, ohne den X Server neu zu starten und ist durch media-video/nvidia-settings in Portage verfügbar.

Quellcode

1
2
3
4
* media-video/nvidia-settings 
     Available versions:  1.0.20051122-r3 1.0.20060516-r1
     Homepage:            http://www.nvidia.com/
     Description:         NVIDIA Linux X11 Settings Utility
MfG MyD

13

12.03.2006, 01:21

12.0 Fehlerbehebung

*** Ich erhalte Warnmeldungen über "unsupported 4K stack sizes"

nvidia-kernel Pakete älter als 1.0.6106 unterstützen nur Kernel, die Stack-Größen von 8K verwenden. Neuere Kernel (2.6.6 und höher) unterstützen auch 4K Stack-Größen. Wählen Sie keine Stack-Größe von 4K aus, wenn Sie eines dieser nvidia-kernel Pakete verwenden. Sie können diese Option in dem Abschnitt Kernel Hacking finden.


*** Wenn ich versuche das Kernelmodul zu laden, erhalte ich ein "no such device"

Dies tritt normalerweise auf, wenn Sie keine passende Grafikkarte haben. Stellen Sie sicher, dass Sie eine nVidia-basierte Grafikkarte haben. Sie können dies mit lspci (enthalten im Paket: pciutils) überprüfen.

Wenn Sie sicher sind, dass Sie eine nVidia-Karte besitzen, sollten Sie Ihr BIOS überprüfen und schauen ob die Anweisung Assign IRQ to VGA gesetzt ist.


*** Ich erhalte "no screens found" und die Protokolle zeigen "Failed to initialize the NVIDIA kernel module!"

Ihnen fehlen höchstwahrscheinlich die /dev/nvidia* Gerätedateien. Erstellen Sie diese mit NVmakedevices.sh:

Quellcode

1
# /sbin/NVmakedevices.sh


Wenn Ihre /dev/nvidia Geräte immernoch nach jedem Neustart fehlen, dann liegt es höchstwahrscheinlich daran, dass udev die richtigen Devicenodes nicht automatisch erstellt. Dies können Sie beheben indem Sie NVmakedevices.sh nochmal laufen lassen und dann die /etc/conf.d/rc wie gezeigt bearbeiten:

Quellcode

1
RC_DEVICE_TARBALL="yes"


Dass wird Ihre /dev/nvidia Nodes beibehalten, auch wenn Sie neustarten.
MfG MyD

14

12.03.2006, 01:29

13.0 Tips!

Falls alles geklappt hat wie es sollte noch 2 kleine Tips :tongue:


Nvidia-Logo beim X-Server Start abschalten: :rolleyes:

Um das NVIDIA Logo beim Start des X-Servers abzuschalten, reicht eine kleine Option in der Konfigurationsdatei /etc/X11/xorg.conf.

Es genügt, folgende Zeile in die "Device"-Section der Konfigurationsdatei (xorg.conf) einzufügen.

Quellcode

1
2
3
4
5
   Section "Device"
   Identifier  "geforce"
   Driver      "nvidia"
   Option "NoLogo" "1"  # diese Option schaltet das Logo ab.
   EndSection




NVidia FW und SBA

Hinweis: Zuerst stelle sicher, dass FastWrites und SBA (Side Band Addressing) vom Mainboard unterstützt werden und im BIOS eingeschaltet worden sind.

Danach überprüfen ob FastWrites und SBA aktiv sind.

Quellcode

1
# cat /proc/driver/nvidia/agp/status 


Zitat

Status: Enabled
Driver: AGPGART
AGP Rate: 4x
Fast Writes: Disabled
SBA: Disabled



FastWrites & SBA einschalten:

Zunächst sollte überprüft werden ob die Grafigkarte Fastwrites & SBA unterstützt.

Quellcode

1
# cat /proc/driver/nvidia/agp/card


Zitat

Fast Writes: Supported
SBA: Supported
AGP Rates: 4x 2x 1x
Registers: 0x1f000217:0x1f000314


Wenn FastWrites & SBA unterstützt wird, erweitern wir die Datei /etc/modules.d/nvidia um folgende Optionen.

Quellcode

1
2
alias char-major-195 NVdriver
options NVdriver NVreg_EnableAGPSBA=1 NVreg_EnableAGPFW=1


Nun geht man in die Konsole, beendet den X-Server und entlädt das nvidia Modul (die Funktion muss in den Kernel einkompiliert sein / rmmod nvidia). Nachdem der X-Server und das Modul nvidia neu gestartet wurde (modprobe nvidia) überprüfen wir nochmal den Status. Ansonsten rebooten ;)

Quellcode

1
# cat /proc/driver/nvidia/agp/status 


Zitat

Status: Enabled
Driver: AGPGART
AGP Rate: 4x
Fast Writes: Enabled
SBA: Enabled
MfG MyD

15

12.03.2006, 01:39

14.0 Bemerkungen & Quellen

Ich habe einiges aus den bestehenden Guides für dieses HowTo übernommen - doch einige Änderungen und Vorgehensweisen geändert...
Ich hoffe keiner stört sich daran...

Nvidia Homepage

Englischer Nvidia Guide

Deutscher Nvidia Guide: Autor: Sven Vermeulen
Sven Vermeulen

Deutscher Gentoo Wiki Eintrag: Nvidia-Logo abschalten

Deutscher Gentoo Wiki Eintrag: Nivida FW und SBA
MfG MyD