Immondizia in primus con calabrone nvidia su Trusty


12

Quanto segue appare durante l'esecuzione optirun glxgears con primuse nvidia-331-updatesconfigurati in bumblebee.conf:

immondizia primus

Questo è il 14.04 Trusty Tahr, aggiornato dal 13.10. L'applicazione sembra funzionare sulla 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 male.

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

Continuando alcuni test, il PRIMUS_UPLOAD=1 bandiera sembra aggiornare correttamente la finestra e tutto funziona come previsto. Questa non è una soluzione permanente però.


1
Ho un problema simile. In particolare, PRIMUS_UPLOAD = 1 sembra consumare così tante risorse che il sovraccarico è maggiore dei guadagni ...
Florian Echtler

Hai nvidia-primeinstallato? Ciò potrebbe causare il problema. Quando provo a far funzionare le cose sulla scheda nvidia usando primus, funziona perfettamente.
biggles5107,

@Furyhunter - questo è troppo umile - cerca nel mio profilo la soluzione su nvidia optimus (con bumblebee) c'è un pacchetto SDK su nvidia da scaricare - è questo link qui: askubuntu.com/questions/311151/…
dschinn1001

Puoi anche provare a usare i driver nouveau per vedere se il bug nei driver nvidia piuttosto che in primus. Inoltre, puoi provare a utilizzare optirun vanilla, anziché primus.
Sparhawk,

Una cosa che faccio invece di usare primusrun è usare optirun con il bridge primus (impostato in bumblebee.conf). Mi sembra di ottenere risultati migliori facendolo in questo modo.
biggles5107,

Risposte:


1

Utilizzare il metodo di recupero GitHub per verificare le 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.0con un singolo punto.
Solo i laptop hanno questo tipo di scheda nVidia Optimus, quindi questo progetto non si applica ai desktop (per ora). Le schede della 4xxM e delle serie più recenti sono tutte abilitate per Optimus. La M sta per "Mobile". Ma avere una scheda 4xxM non è sufficiente per essere sicuri di avere un laptop Optimus. È inoltre necessario un controller video integrato nel processore. Per verificarlo, esegui questo comando in un [terminale] [1]:

Ubuntu come andare con Bumblebee (Wiki)

  • Installazione di base per 12.04 - 13.04

è necessario purgeil ppase hai installato.

  • Basic_Setup_for_13.10_and_later

Terminale acceso e inserire i comandi seguenti:

- Istruzioni UbuntuWiki

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

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

  3. Reboot

adesso

Pugno assicurati che la versione attuale di nvidia sia 304 sia davvero bella.

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"

Il prossimo:

 $ 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. Fallo anche tu o sfoglia il file e modifica i valori senza toccare i 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--

Esempio_update_to_nvidia-319_driver su UbuntuWiki.

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

Funziona molto bene per me.


1

Consiglierei di usare "Nvidia Prime Indicator".

Per prima cosa rimuovi Bumblebee Devi sbarazzarti di Bumblebee e del driver Nvidia. Bumblebee non funziona bene sulla mia macchina Optimus, stessi problemi, ottieni l'indicatore Prime. Anche ilnvidia-331-updates verrà installato con sudo apt-get upgradedopo questa installazione.

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

Attento ai passaggi successivi, eseguire solo i passaggi necessari:

Per rimuovere ed eliminare il terminale Bumblebee Run (se hai una schermata nera, premi Ctrl+ Alt+ F2) e digita:

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 l'indicatore Prime.

In caso contrario , eliminarli tutti con:

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

e ricominciare da zero con:

sudo apt-get install nvidia-331 indicator-prime

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

sudo apt-get install mesa-utils

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

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

EDIT: Dopo aver installato il pacchetto di Intel, SE sudo apt-get updatenon riesce adownload.01.org chiave pubblica, eseguilo nel terminale:

Questo aggiungerà la chiave corretta.

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A902DDA375E52366
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.