Linux Mind Italia

  • Domenica 31 Maggio 2020, 07:12:25
  • Benvenuto, Visitatore
Effettua l'accesso o una nuova registrazione.

Inserisci il nome utente, la password e la durata della sessione.
Ricerca avanzata

News:

Prova LibreOffice 6.3  < clicca qui >

collapse

* Utenti On Line

  • Dot Visitatori: 70
  • Dot Nascosti: 0
  • Dot Utenti: 0

There aren't any users online.

Autore Topic: Nvidia Optimus su Debian 10  (Letto 218 volte)

tomberry

  • Jr. Mind
  • **
  • Offline Offline
  • Post: 115
  • Distro: Debian
Nvidia Optimus su Debian 10
« il: Mercoledì 13 Maggio 2020, 22:00:54 »

Ciao a tutti  :ciao:
In seguito alla mia piccola disavventura ed esperienza di questi giorni con la tecnologia Optimus (ovvero la doppia scheda video dei notebook, nella fattispecie Intel-Nvidia), ho pensato di fare cosa gradita nel fare questa mini-guida per abilitare in maniera funzionante la tecnologia Optimus con Bumblebee e i driver Nvidia che si trovano nei repo ufficiali di Debian (in questo caso 10 ovvero Buster)

Il notebook che ho usato per gli esperimenti è un Asus Pro Essential PU551JD, un notebook con qualche anno sulle spalle (classe 2014).
Parto col presupposto che abbiate abilitato sudo sulla vostra distro, nel caso non lo abbiate fatto dovete abilitarlo o eseguire i comandi che richiedono sudo come root.
Il sistema seguente funziona anche su Ubuntu e derivate (almeno in teoria, io l'ho testato su Debian 10 Buster).

Ora, per prima cosa verifichiamo che schede video sono presenti sul nostro computer, apriamo un terminale e inseriamo:
Codice: [Seleziona]
lspci | egrep 'VGA|3D'
Il risultato sarà simile al seguente (questo ovviamente è il mio), con le voci relative sia alla scheda Intel integrata che quella Nvidia:
Codice: [Seleziona]
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 3D controller: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] (rev ff)

Ora (nel caso non lo abbiate già fatto) modifichiamo il file sources.list, abilitando i repository contrib e non-free oltre ai backports (io uso come editor gedit):
Codice: [Seleziona]
sudo gedit /etc/apt/sources.list
Copiamo e incolliamo la lista dei repository così composta:
Codice: [Seleziona]
# Principale per Debian 10 (Buster)
deb http://deb.debian.org/debian buster main contrib non-free
deb-src http://deb.debian.org/debian buster main contrib non-free
# Aggiornamenti di sicurezza per Debian 10 (Buster)
deb http://security.debian.org/ buster/updates main contrib non-free
deb-src http://security.debian.org/ buster/updates main contrib non-free
# Aggiornamenti raccomandati per Debian 10 (Buster)
deb http://deb.debian.org/debian buster-updates main contrib non-free
deb-src http://deb.debian.org/debian buster-updates main contrib non-free
# Backports per Debian 10 (Buster)
deb http://deb.debian.org/debian buster-backports main contrib non-free
deb-src http://deb.debian.org/debian buster-backports main contrib non-free

Salviamo e chiudiamo il file, dopodichè abilitiamo il supporto all'architettura i386 (x86):
Codice: [Seleziona]
sudo dpkg --add-architecture i386
Adesso aggiorniamo la lista dei pacchetti e il sistema:
Codice: [Seleziona]
sudo apt update ; sudo apt upgrade -y
Puliamo il sistema da eventuali pacchetti presenti per nvidia (è solo una precauzione, se non c'è nulla non verrà rimosso nulla, per esempio se avete appena fatto una installazione pulita):
Codice: [Seleziona]
sudo apt remove --purge nvidia* libnvidia* bumblebee* primus* -y
Aggiungiamo i driver nouveau alla blacklist (dato che andremo a usare quelli nvidia ed evitiamo che vadano in conflitto le configurazioni):
Codice: [Seleziona]
echo "blacklist nouveau" | sudo tee/etc/modprobe.d/blacklist.conf
Riavviamo il sistema (possiamo farlo anche da terminale):
Codice: [Seleziona]
sudo reboot


Ora andiamo ad installare nvidia-detect per sapere quali driver installare sul nostro sistema (variano in base alla scheda video presente) e lanciamo il comando:
Codice: [Seleziona]
sudo apt install nvidia-detect ; nvidia-detect
Nel mio caso viene consigliato il driver nvidia-legacy-390xx-driver:
Codice: [Seleziona]
Detected NVIDIA GPUs:
01:00.0 3D controller [0302]: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] [10de:1140] (rev ff)

Checking card: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] (rev ff)
Your card is only supported up to the 390 legacy drivers series.
It is recommended to install the
    nvidia-legacy-390xx-driver
package.

Che andremo a installare (ripeto, a voi potrebbe uscire un driver diverso, quindi installate quello che compare nel vostro output):
Codice: [Seleziona]
sudo apt install -y nvidia-legacy-390xx-driver
Una volta installati i driver relativi alla nostra scheda, possiamo procedere a installare i pacchetti per la tecnologia Optimus:
Codice: [Seleziona]
sudo apt install bumblebee-nvidia primus primus-libs:i386 mesa-utils -y
Aggiungiamo il nome utente al gruppo bumblebee (nel caso non sia stato aggiunto automaticamente col comando precedente):
Codice: [Seleziona]
sudo adduser $USER bumblebee
Installiamo VirtualGL:
Codice: [Seleziona]
wget https://sourceforge.net/projects/virtualgl/files/2.6.3/virtualgl_2.6.3_amd64.deb -P /tmp/ ; sudo dpkg -i /tmp/virtualgl_*.deb
Nel caso compaiano errori:
Codice: [Seleziona]
sudo apt -f install
E creiamo un link simbolico del binario glxspheres64:
Codice: [Seleziona]
sudo ln -s /opt/VirtualGL/bin/glxspheres64 /usr/local/bin/
Dopodichè riavviamo il sistema (come prima, possiamo farlo anche da terminale):
Codice: [Seleziona]
sudo reboot


Passiamo ai test, con questo comando possiamo vedere la lista dei pacchetti che abbiamo installato relativi alla scheda Nvidia:
Codice: [Seleziona]
dpkg --list | grep -i "nvidia\|primus"
Per testare la scheda Intel:
Codice: [Seleziona]
glxinfo | grep render
Codice: [Seleziona]
glxinfo | grep direct
Codice: [Seleziona]
glxinfo | grep OpenGL
Codice: [Seleziona]
glxgears
Codice: [Seleziona]
glxspheres64
Per testare la scheda Nvidia (per attivare la gestione grafica di Nvidia, è necessario immettere il comando optirun prima dei comandi da usare):
Codice: [Seleziona]
optirun glxinfo | grep render
Codice: [Seleziona]
optirun glxinfo | grep direct
Codice: [Seleziona]
optirun glxinfo | grep OpenGL
Codice: [Seleziona]
optirun glxgears
Codice: [Seleziona]
vblank_mode=0 primusrun glxgears -info
Codice: [Seleziona]
optirun glxspheres64
Verrà creato il lanciatore nel menu relativo al pannello di controllo Nvidia, ma non funzionerà in quanto il comando predefinito funziona nel caso abbiate solo la scheda Nvidia presente nel sistema, per eseguirlo dovrete usare questo comando:
Codice: [Seleziona]
optirun -b none nvidia-settings -c :8
(Si può modificare il lanciatore del menu modificando il comando da lanciare predefinito con quello sopra)

Questi i risultati della mia configurazione dei comandi glxgears e glxspheres64 su scheda Intel e scheda Nvidia:
Codice: [Seleziona]
tomberry@pu551j:~$ glxgears
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
311 frames in 5.0 seconds = 62.137 FPS
301 frames in 5.0 seconds = 60.075 FPS
305 frames in 5.0 seconds = 60.939 FPS

tomberry@pu551j:~$ optirun glxgears
6605 frames in 5.0 seconds = 1320.975 FPS
6420 frames in 5.0 seconds = 1283.870 FPS
6535 frames in 5.0 seconds = 1306.800 FPS

tomberry@pu551j:~$ glxspheres64
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
GLX FB config ID of window: 0xa8 (8/8/8/0)
Visual ID of window: 0xff
Context is Direct
OpenGL Renderer: Mesa DRI Intel(R) Haswell Mobile
61.439641 frames/sec - 59.084291 Mpixels/sec
59.972640 frames/sec - 57.673529 Mpixels/sec
60.062232 frames/sec - 57.759686 Mpixels/sec

tomberry@pu551j:~$ optirun glxspheres64
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
GLX FB config ID of window: 0x10d (8/8/8/0)
Visual ID of window: 0x21
Context is Direct
OpenGL Renderer: GeForce 820M/PCIe/SSE2
136.337392 frames/sec - 131.110762 Mpixels/sec
138.723252 frames/sec - 133.405157 Mpixels/sec
138.724225 frames/sec - 133.406093 Mpixels/sec
Connesso
Desktop: MSI Z270 Gaming Pro Carbon | Notebook: Acer TravelMate 5760 | Notebook: ASUS Pro Essential PU551JD | OS: Debian 10 Buster amd64 Gnome 3.30

Tony

  • Staff
  • Hero Mind
  • ******
  • Offline Offline
  • Post: 4235
  • Distro: Ubuntu 18.04.1 LTS 64bit XFCE
Re:Nvidia Optimus su Debian 10
« Risposta #1 il: Mercoledì 13 Maggio 2020, 22:05:53 »

:ok:
Connesso
Linux non è solo un sistema operativo ma...
"È uno stato mentale, dove prima ti perdi e poi ti ritrovi"
(cit. Point Break).

tonyvaper

  • New Mind
  • *
  • Offline Offline
  • Post: 3
  • Distro: Cinnamomo 19.3
Re:Nvidia Optimus su Debian 10
« Risposta #2 il: Giovedì 21 Maggio 2020, 02:47:46 »

Sono giorni che provo a far partire i driver Nvidia. Domani provo la tua guida e ti aggiorno

Inviato dal mio SM-A605FN utilizzando Tapatalk
« Ultima modifica: Giovedì 21 Maggio 2020, 11:12:27 da tonyvaper »
Connesso

tonyvaper

  • New Mind
  • *
  • Offline Offline
  • Post: 3
  • Distro: Cinnamomo 19.3
Re:Nvidia Optimus su Debian 10
« Risposta #3 il: Giovedì 21 Maggio 2020, 13:14:19 »

Nada non riesco a farle andare su Mint cinnamon 19.3

Inviato dal mio SM-A605FN utilizzando Tapatalk

Connesso

eternauta

  • Full Mind
  • ***
  • Offline Offline
  • Post: 443
  • Distro: LMDE 4 Debbie 64 bit Cinnamon... e altre :-)
    • Cinuda's blog
Re:Nvidia Optimus su Debian 10
« Risposta #4 il: Venerdì 22 Maggio 2020, 11:45:32 »

Nada non riesco a farle andare su Mint cinnamon 19.3
Consiglio: se vuoi che @tomberry provi ad aiutarti, dovresti dettagliare un po' di più il problema. Ad esempio, copiando qui sul forum i comandi e i relativi output del terminale che ricevi quando provi a seguire la guida. ;)
 :ciao:
Connesso
A questo mondo niente rimane uguale, la notte più lunga eterna non è. (Bertolt Brecht)
Sperem...

tomberry

  • Jr. Mind
  • **
  • Offline Offline
  • Post: 115
  • Distro: Debian
Re:Nvidia Optimus su Debian 10
« Risposta #5 il: Martedì 26 Maggio 2020, 20:15:56 »

Sono giorni che provo a far partire i driver Nvidia. Domani provo la tua guida e ti aggiorno

Inviato dal mio SM-A605FN utilizzando Tapatalk

Ma intendi i driver nvidia e basta o i driver per la scheda dedicata (tipo su pc desktop)?
La guida che ho fatto io l'ho provata su Debian 10, e lì posso garantire che funziona, su Mint 19.3 non ho provato ma se mi spieghi il problema posso provare ad aiutarti.
Connesso
Desktop: MSI Z270 Gaming Pro Carbon | Notebook: Acer TravelMate 5760 | Notebook: ASUS Pro Essential PU551JD | OS: Debian 10 Buster amd64 Gnome 3.30