Garbage in primus con nvidia bumblebee su Trusty

12

Viene visualizzato quanto segue quando si esegue optirun glxgears con primus e nvidia-331-updates configurato in bumblebee.conf :

Questo è il 14.04 Trusty Tahr, aggiornato dal 13.10. L'applicazione sembra funzionare con la GPU nvidia, ma non viene visualizzata correttamente come nella versione precedente della distro. Sospetto che questo sia un bug in primus nei repository 14.04, a meno che uno dei miei pacchetti non sia configurato correttamente.

La finestra si aggiorna e visualizza parte dell'immagine glxgears, ma solo quando si riduce la finestra e una volta per fotogramma viene ridimensionata la finestra. Anche la vista GL è ridimensionata in modo errato in questo processo.

Continuando a testare, il flag PRIMUS_UPLOAD=1 sembra far sì che la finestra si aggiorni correttamente e tutto funzioni come previsto. Questa però non è una soluzione permanente.

    
posta Eidolon 17.03.2014 - 06:10
fonte

2 risposte

1

Utilizza il metodo di recupero di GitHub per verificare le tue specifiche.

$ 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)
  • Notare la notazione 08:00.0 con un singolo dote.
Solo i laptop hanno questo tipo di scheda nVidia Optimus, quindi questo progetto non si applica ai desktop (per ora). Le carte della serie 4xxM e più recenti sono tutte ottimamente abilitate. The M sta per "Mobile". Ma avere una scheda 4xxM non è sufficiente per essere sicuro di avere un laptop Optimus. Ci deve essere anche un controller video integrato nel tuo processore. Per verificarlo, esegui questo comando in un [terminale] [1]:

Modo di Ubuntu per andare con Bumblebee (Wiki)

  • Impostazione di base per 12.04 - 13.04

devi purge di ppa se lo hai installato.

  • Basic_Setup_for_13.10_and_later

Terminale attivo e inserisci i comandi seguenti:

- Istruzioni di UbuntuWiki

  1. Abilita i repository Universe e Multiverse - devi farlo per consentire rispettivamente l'installazione dei pacchetti bumblebee e nvidia.

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

  3. Reboot

ora

Il pugno si assicura che la versione di nvidia-corrente sia 304 è davvero interessante.

Dopo l'installazione -

$ 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

RICORDA 08:00.0 ?

$ 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"

Successivo:

 $ 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 : ho rimosso i commenti originali (intrunzioni) come backup.  Fai anche tu o sfoglia il file e modifica i valori senza toccare commenti.

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

Successivamente, segui le informazioni fornite in -

Example_update_to_nvidia-319_driver su UbuntuWiki.

Regolerai anche la versione e i percorsi del driver nel file sopra.

Funziona molto bene con me.

    
risposta data ftcosta 13.12.2014 - 06:41
fonte
1

Suggerirei di utilizzare "Indicatore Prime Nvidia".

Rimuovi prima Bumblebee Hai bisogno di sbarazzarti di Bumblebee e del driver Nvidia. Bumblebee non funziona bene sulla mia macchina Optimus, gli stessi problemi, ottiene l'indicatore Prime. Anche il nvidia-331-updates verrà installato con sudo apt-get upgrade dopo questa installazione.

Questa è la mia guida da un altro thread, provalo, credo che potrebbe funzionare.

Attenta ai passaggi successivi, effettua solo i passaggi necessari:

Per rimuovere ed eliminare il bumblebee run terminal (se hai schermo nero, premi Ctrl + Alt + F2 ) e scrivi:

sudo apt-get remove --purge bumblebee

Per installare Prime, esegui tutte e 3 le righe di comando:

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

Dovrebbe funzionare fuori dalla scatola con Prime Indicator.

Se non , elimina tutti con:

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

e inizia da zero con:

sudo apt-get install nvidia-331 indicator-prime

Quando lo fai funzionare, installa mesa-utils che ci permette di riconoscere le GPU:

sudo apt-get install mesa-utils

Hai Nvidia Optimus, i prossimi passaggi per il driver Intel:

Passa alla GPU Intel da Prime Indicator e ottieni Intel Graphics Installer .deb, installalo tramite Software Center, trova l'Installer in Dash ed eseguilo per aggiornare il tuo Intel 4000 con i driver più recenti.

EDIT: dopo aver installato il pacchetto Intel, IF sudo apt-get update fallisce su download.01.org chiave pubblica, eseguilo nel terminale:

Questo aggiungerà la chiave corretta.

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A902DDA375E52366
    
risposta data Zbunjeni 11.12.2014 - 21:04
fonte

Leggi altre domande sui tag