Voici la réponse complète (basée sur les réponses d' Alex Falappa et de Lekensteyn ):
Il est en effet possible d'obtenir des GPU nVidia Optimus pour exécuter CUDA sur Ubuntu.
Bumblebee n'est pas nécessaire pour CUDA. (en savoir plus sur Bumblebee : un NVIDIA GeForce avec la technologie Optimus est-il pris en charge par Ubuntu? )
Cependant, lorsque vous avez besoin de montrer des exemples graphiques en utilisant OpenGL, vous avez besoin de quelque chose comme Bumblebee pour les systèmes Optimus, sinon vous ne voyez pas non plus quoi que ce soit sur votre écran ou obtenez l'erreur:
ERROR: Support for necessary OpenGL extensions missing.
Si vous devez utiliser un programme gourmand en graphisme tel que Blender, Bumblebee est actuellement une bonne solution.
Passez à Installer CUDA si vous ne souhaitez pas installer Bumblebee (c'est-à-dire si vous n'avez pas besoin d'OpenGL).
Sinon, lisez la suite.
Installer Bumblebee
Suivez les instructions de Comment fonctionnent les ordinateurs portables avec Nvidia Optimus?
Celles-ci sont actuellement tenues à jour par un développeur Bumblebee.
Une fois que vous avez installé Bumblebee et redémarré, vous pourrez choisir la carte graphique à utiliser lors du lancement de programmes en utilisant le optirun
programme.
Par exemple:
optirun blender
Pour tester rapidement si tout fonctionne correctement, utilisez:
optirun glxspheres
Vous verrez un programme avec des sphères de rotation colorées si tout fonctionne correctement.
Vérifiez que la chaîne du fournisseur GL dans le terminal contient le mot nvidia .
Si vous exécutez uniquement glxspheres
, vous verrez que la chaîne du fournisseur contient la carte Intel à la place.
Lorsque vous exécutez un programme CUDA, vous devez installer la boîte à outils CUDA et un pilote nvidia. Si vous avez l'intention de compiler des programmes, vous avez également besoin du SDK. Les programmes d'installation peuvent être trouvés sur http://developer.nvidia.com/cuda-downloads , veuillez lire les instructions ci-dessous avant d'utiliser votre ordinateur portable Optimus.
Installer CUDA
Chauffeur
Je recommande d'installer le pilote nvidia à partir du gestionnaire de paquets d'Ubuntu. Si vous installez Bumblebee, vous n'avez pas à vous soucier du pilote. Sinon, après l'installation, désactivez les bibliothèques nvidia comme décrit sur /ubuntu//a/107746/6969 . Si vous ne le faites pas, vous perdrez l'accélération 3D et risquez de rester bloqué sur une basse résolution.
Boîte à outils
Fondamentalement, vous devez télécharger le programme d'installation, le rendre exécutable et l'exécuter. - Téléchargez l'installateur. Au 9 janvier 2013, 5.0.35 était le pilote le plus récent. Comme j'ai un système d'exploitation 64 bits, j'utilise le package Ubuntu 64 bits 11.10 (bien que j'exécute 12.10) - Rendez-le exécutable et autorisez l'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
Lorsque le message d'installation s'affiche et vous demande où installer CUDA, appuyez simplement sur Entrée pour accepter la valeur par défaut /usr/local/cuda
:
......................................
Enter install path (default /usr/local/cuda, '/cuda' will be appended):
Après l'installation, il affichera quelques messages qui suggèrent de mettre le répertoire de la bibliothèque cuda dans votre chemin de recherche de bibliothèque:
========================================
* 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
Vous pouvez ignorer cette étape si vous le souhaitez, mais vous devez ensuite définir LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/lib:$LD_LIBRARY_PATH
plus tard lors de l'exécution d'un programme.
SDK
Si vous souhaitez pouvoir compiler des applications CUDA, vous pouvez installer le SDK de la même manière que décrit ci-dessus. Téléchargez, rendez-le exécutable et exécutez-le (pas en tant que root, par exemple sans sudo
!).
Utilisation de CUDA
CUDA n'a pas besoin d'un serveur X piloté par nvidia pour fonctionner. Dans ce cas, vous pouvez exécuter votre programme de test aléatoire comme:
LD_LIBRARY_PATH = / usr / lib / nvidia-current: / usr / lib32 / nvidia-current: $ LD_LIBRARY_PATH someComputallyIntensiveProgram
Si vous n'avez pas ajouté CUDA à votre chemin d'accès à la bibliothèque, vous aurez besoin de:
LD_LIBRARY_PATH = / usr / lib / nvidia-current: / usr / lib32 / nvidia-current: / usr / local / cuda / lib64: / usr / local / cuda / lib: $ LD_LIBRARY_PATH someComputallyIntensiveProgram
(vous pouvez en supprimer les chemins 32 bits si votre programme est en 64 bits).
Si le programme CUDA a quelque chose à afficher en utilisant OpenGL, vous devez utiliser optirun:
optirun blender
Ou, si vous n'avez pas ajouté CUDA à votre chemin par défaut:
LD_LIBRARY_PATH = / usr / local / cuda / lib64: / usr / local / cuda / lib: $ LD_LIBRARY_PATH optirun blender
Installation d'une version Blender
(Avec les noyaux CUDA précompilés)
Lorsque vous exécutez optirun blender
, vous pouvez recevoir un message de Blender disant que la compilation du noyau CUDA a échoué, et un message dans le terminal semblable au suivant:
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.
Si vous souhaitez utiliser la fonction de rendu GPU de Blender, vous aurez peut-être besoin d'une version Blender avec des noyaux CUDA précompilés. Les versions de Blender.org ont toutes des noyaux CUDA précompilés; les versions ppa: cheleb / blender-svn ( plus d'informations à cette question ) ne le font pas.
Pour installer une version officielle de Blender, suivez simplement les instructions présentées dans cette réponse .
Si vous avez installé Blender sur /usr/lib/blender
, vous devriez alors pouvoir exécuter Blender à partir du terminal et utiliser le rendu GPU avec:
optirun '/usr/lib/blender/blender'