Hier ist die vollständige Antwort (basierend auf den Antworten von Alex Falappa und Lekensteyn ):
Es ist in der Tat möglich, dass nVidia Optimus-GPUs CUDA unter Ubuntu ausführen.
Hummel ist für CUDA nicht erforderlich. (Weitere Informationen zu Bumblebee : Wird eine NVIDIA GeForce mit Optimus-Technologie von Ubuntu unterstützt? )
Wenn Sie jedoch grafische Beispiele mit Hilfe von OpenGL zeigen müssen, Sie tun müssen so etwas wie Bumblebee für Optimus Systeme, sonst entweder Sie nichts auf dem Display sehen oder den Fehler:
ERROR: Support for necessary OpenGL extensions missing.
Wenn Sie ein grafikintensives Programm wie Blender verwenden müssen, ist Bumblebee derzeit ein guter Weg.
Fahren Sie mit Installieren von CUDA fort, wenn Sie Bumblebee nicht installieren möchten (dh wenn Sie OpenGL nicht benötigen).
Ansonsten lesen Sie weiter.
Bumblebee installieren
Befolgen Sie die Anweisungen unter Wie gut funktionieren Laptops mit Nvidia Optimus?
Diese werden derzeit von einem Bumblebee-Entwickler auf dem neuesten Stand gehalten.
Sobald Sie Bumblebee installiert und neu gestartet haben, können Sie die Grafikkarte auswählen, die beim Starten von Programmen mithilfe des optirun
Programms verwendet werden soll.
Beispielsweise:
optirun blender
Um schnell zu testen, ob alles richtig funktioniert, verwenden Sie:
optirun glxspheres
Sie sehen ein Programm mit bunten sich drehenden Kugeln, wenn alles richtig funktioniert.
Stellen Sie sicher, dass die GL-Lieferantenzeichenfolge im Terminal das Wort nvidia enthält .
Wenn Sie nur ausführen glxspheres
, wird angezeigt, dass die Herstellerzeichenfolge stattdessen die Intel-Karte enthält.
Wenn Sie ein CUDA-Programm ausführen, müssen Sie das CUDA-Toolkit und einen NVIDIA-Treiber installieren. Wenn Sie Programme kompilieren möchten, benötigen Sie auch das SDK. Die Installationsprogramme finden Sie unter http://developer.nvidia.com/cuda-downloads . Lesen Sie bitte die folgenden Anweisungen, bevor Sie Ihren Optimus-Laptop borken.
CUDA installieren
Treiber
Ich empfehle, den nvidia-Treiber vom Paketmanager von Ubuntu zu installieren. Wenn Sie Bumblebee installieren, müssen Sie sich keine Sorgen um den Treiber machen. Deaktivieren Sie andernfalls nach der Installation die nvidia-Bibliotheken wie unter https://askubuntu.com/a/107746/6969 beschrieben . Wenn Sie dies nicht tun, verlieren Sie die 3D-Beschleunigung und bleiben möglicherweise bei einer niedrigen Auflösung hängen.
Toolkit
Grundsätzlich müssen Sie das Installationsprogramm herunterladen, ausführbar machen und ausführen. - Laden Sie das Installationsprogramm herunter. Ab dem 9. Januar 2013 ist 5.0.35 der neueste Treiber. Wie ich eine 64-Bit - Betriebssystem haben, verwende ich die 64-Bit - 11.10 Ubuntu - Paket (obwohl ich 12.10 renne) - Machen Sie es ausführbar und erlauben die Installation /usr/local/cuda
:
chmod +x cudatoolkit_5.0.35_linux_64_ubuntu11.10-1.run
sudo ./cudatoolkit_5.0.35_linux_64_ubuntu11.10-1.run
Wenn Sie in der Installationsmeldung gefragt werden, wo CUDA installiert werden soll, drücken Sie einfach die Eingabetaste, um die Standardeinstellung zu akzeptieren /usr/local/cuda
:
......................................
Enter install path (default /usr/local/cuda, '/cuda' will be appended):
Nach der Installation werden einige Meldungen ausgegeben, in denen vorgeschlagen wird, das cuda-Bibliotheksverzeichnis in Ihren Bibliothekssuchpfad aufzunehmen:
========================================
* Please make sure your PATH includes /tmp/cuda/cuda/bin
* Please make sure your LD_LIBRARY_PATH
* for 32-bit Linux distributions includes /tmp/cuda/cuda/lib
* for 64-bit Linux distributions includes /tmp/cuda/cuda/lib64:/tmp/cuda/cuda/lib
* OR
* for 32-bit Linux distributions add /tmp/cuda/cuda/lib
* for 64-bit Linux distributions add /tmp/cuda/cuda/lib64 and /tmp/cuda/cuda/lib
* to /etc/ld.so.conf and run ldconfig as root
* Please read the release notes in /tmp/cuda/cuda/doc/
* To uninstall CUDA, remove the CUDA files in /tmp/cuda/cuda
* Installation Complete
Sie können diesen Schritt überspringen, wenn Sie möchten, aber Sie müssen ihn LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/lib:$LD_LIBRARY_PATH
später festlegen, wenn Sie ein Programm ausführen.
SDK
Wenn Sie CUDA-Anwendungen kompilieren möchten, können Sie das SDK auf ähnliche Weise wie oben beschrieben installieren. Laden Sie es herunter, machen Sie es ausführbar und führen Sie es aus (nicht als root, zB ohne sudo
!).
CUDA verwenden
CUDA benötigt keinen NVIDIA-gesteuerten X-Server. In diesem Fall können Sie Ihr Zufallstestprogramm wie folgt ausführen:
LD_LIBRARY_PATH = / usr / lib / nvidia-current: / usr / lib32 / nvidia-current: $ LD_LIBRARY_PATH someComputallyIntensiveProgram
Wenn Sie CUDA nicht zu Ihrem Bibliothekspfad hinzugefügt haben, benötigen Sie:
LD_LIBRARY_PATH = / usr / lib / nvidia-current: / usr / lib32 / nvidia-current: / usr / local / cuda / lib64: / usr / local / cuda / lib: $ LD_LIBRARY_PATH someComputallyIntensiveProgram
(Sie können die 32-Bit-Pfade entfernen, wenn Ihr Programm 64-Bit ist).
Wenn das CUDA-Programm mit OpenGL etwas anzuzeigen hat, müssen Sie optirun verwenden:
optirun blender
Oder, wenn Sie CUDA nicht zu Ihrem Standardpfad hinzugefügt haben:
LD_LIBRARY_PATH = / usr / local / cuda / lib64: / usr / local / cuda / lib: $ LD_LIBRARY_PATH optirun Blender
Blender Build installieren
(Mit vorkompilierten CUDA-Kerneln)
Während der Ausführung erhalten optirun blender
Sie möglicherweise eine Meldung von Blender, dass die Kompilierung des CUDA-Kernels fehlgeschlagen ist, sowie eine Meldung im Terminal, die der folgenden ähnelt:
Compiling CUDA kernel ...
nvcc warning : Option '--opencc-options (-Xopencc)' is obsolete and ignored, when
targeting compute_20, sm_20, or higher
gcc: error trying to exec 'cc1plus': execvp: No such file or directory
CUDA kernel compilation failed, see console for details.
Wenn Sie die GPU-Rendering-Funktion von Blender verwenden möchten, benötigen Sie möglicherweise einen Blender-Build mit vorkompilierten CUDA-Kerneln. Builds von Blender.org haben alle CUDA-Kernel vorkompiliert. das ppa: cheleb / blender-svn baut ( mehr informationen zu dieser frage ) nicht.
Befolgen Sie einfach die Anweisungen in dieser Antwort, um ein offizielles Blender-Build zu installieren .
Wenn Sie Blender auf installiert haben /usr/lib/blender
, sollten Sie in der Lage sein, Blender vom Terminal aus auszuführen und GPU-Rendering zu verwenden mit:
optirun '/usr/lib/blender/blender'