Garbage in primus with nvidia bumblebee sur Trusty

12

Ce qui suit apparaît lors de l'exécution optirun glxgearsavec primuset nvidia-331-updatesconfiguré dans bumblebee.conf:

ordures primus

C'est le 14.04 Trusty Tahr, mis à jour à partir de 13.10. L'application semble fonctionner sur le nvidia gpu, mais ne s'affiche pas correctement comme dans la version précédente de la distribution. Je soupçonne que c'est un bogue dans primus dans le référentiel 14.04, à moins qu'un de mes paquets ne soit mal configuré.

La fenêtre rafraîchit et affiche une partie de l'image glxgears, mais seulement lorsque je rétrécis la fenêtre, et une fois par image, la fenêtre est redimensionnée. La fenêtre GL est également mise à l'échelle de manière incorrecte dans ce processus.

Poursuivant certains tests, l' PRIMUS_UPLOAD=1indicateur semble faire rafraîchir la fenêtre correctement et tout fonctionne comme prévu. Ce n'est cependant pas une solution permanente.

Eidolon
la source
1
J'ai le même problème. En particulier, PRIMUS_UPLOAD = 1 semble consommer tellement de ressources que les frais généraux sont plus importants que les gains ...
Florian Echtler
Avez-vous nvidia-primeinstallé? Cela pourrait être à l'origine du problème. Lorsque j'essaie d'exécuter des choses sur la carte nvidia en utilisant primus, cela fonctionne très bien.
biggles5107
@Furyhunter - c'est trop humble - cherchez dans mon profil une solution sur nvidia optimus (avec bumblebee) il y a un paquet SDK sur nvidia à télécharger - c'est ce lien ici: askubuntu.com/questions/311151/…
dschinn1001
Vous pouvez également essayer d'utiliser les nouveaux pilotes pour voir si le bogue dans les pilotes nvidia plutôt que primus. En outre, vous pouvez essayer d'utiliser optirun vanilla, au lieu de primus.
Sparhawk
Une chose que je fais au lieu d'utiliser primusrun lui-même est d'utiliser optirun avec le pont primus (défini dans bumblebee.conf). Je semble obtenir de meilleurs résultats en procédant de cette façon.
biggles5107

Réponses:

1

Utilisez la méthode de récupération GitHub pour vérifier vos spécifications.

$ lspci -vnn | grep '\''[030[02]\]'
00:02.0 VGA compatible controller [0300]: Intel Corporation Haswell-ULT Integrated Graphics Controller [8086:0a16] (rev 09) (prog-if 00 [VGA controller])
08:00.0 3D controller [0302]: NVIDIA Corporation GK208M [GeForce GT 740M] [10de:1292] (rev a1)
  • Remarquez la notation 08:00.0avec un seul dote.
Seuls les ordinateurs portables ont ce type de carte nVidia Optimus, donc ce projet ne s'applique pas aux ordinateurs de bureau (pour l'instant). Les cartes des séries 4xxM et plus récentes sont toutes compatibles avec Optimus. Le M signifie "Mobile". Mais avoir une carte 4xxM ne suffit pas pour être sûr d'avoir un ordinateur portable Optimus. Il doit également y avoir un contrôleur vidéo intégré dans votre processeur. Pour vérifier cela, exécutez cette commande dans un [terminal] [1]:

Voie Ubuntu avec Bumblebee (Wiki)

  • Configuration de base pour 12.04 - 13.04

vous devez purgele ppasi vous l'avez installé.

  • Basic_Setup_for_13.10_and_later

Terminal allumé et entrez les commandes ci-dessous:

- Instructions UbuntuWiki

  1. Activez les référentiels Universe et Multiverse - vous devez le faire pour autoriser respectivement l'installation des packages bumblebee et nvidia.

  2. sudo apt-get install bumblebee bumblebee-nvidia primus linux-headers-generic

  3. Redémarrer

maintenant

Fist, assurez-vous que la version actuelle de nvidia est 304, c'est vraiment cool.

Après l'installation--

$ ls -l /etc/bumblebee/
-rw-r--r-- 1 root root 2957 Dez  1 00:38 bumblebee.conf
drwxr-xr-x 2 root root 4096 Nov 30 23:57 xorg.conf.d
-rw-r--r-- 1 root root  513 Dez  1 00:37 xorg.conf.nouveau
-rw-r--r-- 1 root root 1380 Dez  1 00:37 xorg.conf.nvidia

SOUVENEZ 08:00.0- VOUS ?

$ cat /etc/bumblebee/xorg.conf.n*
$ view /etc/bumblebee/xorg.conf.nouveau # and
$ view /etc/bumblebee/xorg.conf.nvidia  # and change the last dot in

BusID "PCI:08:00.0"

Prochain:

 $ view /etc/bumblebee/bumblebee.conf
 [bumblebeed]
 VirtualDisplay=:8       # refers to PCI:08:00.0, the 1st left 0 is ignored
 KeepUnusedXServer=false
 ServerGroup=bumblebee
 TurnCardOffAtExit=false
 NoEcoModeOverride=false
 Driver=nvidia           # changed
 XorgConfDir=/etc/bumblebee/xorg.conf.d

 [optirun]
 Bridge=auto
 VGLTransport=proxy
 PrimusLibraryPath=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus
 AllowFallbackToIGC=false

 [driver-nvidia]
 KernelDriver=nvidia-current
 PMMethod=bbswitch       # changed
 LibraryPath=/usr/lib/nvidia-current:/usr/lib32/nvidia-current
 XorgModulePath=/usr/lib/nvidia-current/xorg,/usr/lib/xorg/modules
 XorgConfFile=/etc/bumblebee/xorg.conf.nvidia

 [driver-nouveau]
 KernelDriver=nouveau
 PMMethod=auto
 XorgConfFile=/etc/bumblebee/xorg.conf.nouveau

Wanning : J'ai supprimé les commentaires d'origine (intrunctions) en tant que sauvegarde. Faites-le aussi ou parcourez le fichier et modifiez les valeurs sans toucher aux commentaires.

Test primus

 DRI_PRIME=0 glxgears -info | grep "GL_VENDOR"
 DRI_PRIME=1 glxgears -info | grep "GL_VENDOR"

 $ DRI_PRIME=:8 glxgears # and finaly do it

Après cela, suivez les informations fournies dans ...

Example_update_to_nvidia-319_driver sur UbuntuWiki.

Vous ajusterez également la version du pilote et les chemins dans le fichier ci-dessus.

Fonctionne très bien pour moi.

ftcosta
la source
1

Je recommanderais d'utiliser "Nvidia Prime Indicator".

Supprimer d'abord Bumblebee Vous devez vous débarrasser de Bumblebee et du pilote Nvidia. Bumblebee ne fonctionne pas bien sur ma machine Optimus, mêmes problèmes, obtenez l'indicateur Prime. Le nvidia-331-updatessera également installé sudo apt-get upgradeaprès cette installation.

Ceci est mon guide d'un autre fil, essayez-le, je pense que cela pourrait fonctionner.

Attention aux prochaines étapes, ne faites que les étapes nécessaires:

Pour supprimer et purger le terminal run bumblebee (si vous avez un écran noir, appuyez sur Ctrl+ Alt+ F2) et tapez:

sudo apt-get remove --purge bumblebee

Pour installer Prime, exécutez les 3 lignes de commande:

sudo add-apt-repository ppa:nilarimogard/webupd8 &&
sudo apt-get update && sudo apt-get install prime-indicator

Il devrait fonctionner à partir de la boîte avec Prime Indicator.

Sinon , purgez-les tous avec:

sudo apt-get remove 'nvidia.*' prime-indicator && sudo apt-get autoremove

et repartir de zéro avec:

sudo apt-get install nvidia-331 indicator-prime

Lorsque vous le faites fonctionner, installez mesa-utils qui nous permet de reconnaître les GPU:

sudo apt-get install mesa-utils

Vous avez Nvidia Optimus, prochaines étapes pour le pilote Intel:

Basculez vers Intel GPU à partir de Prime Indicator et obtenez le fichier Intel Graphics Installer .deb, installez-le via le Centre de logiciels, recherchez le programme d'installation dans Dash et exécutez-le pour mettre à jour votre Intel 4000 avec les derniers pilotes.

EDIT: Après avoir installé le package Intel, IF sudo apt-get updateéchoue sur download.01.orgla clé publique, exécutez ceci dans le terminal:

Cela ajoutera la bonne clé.

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A902DDA375E52366
Zbunjeni
la source