Bumblebee + nvidia-legacy-390xx, configuración en Buster

13 envíos / 0 nuevos
Último envío
#1 Jue, 14/11/2019 - 11:44
dev_random
Imagen de dev_random
Desconectado/a
se unió: 14/11/19

Bumblebee + nvidia-legacy-390xx, configuración en Buster

Estado: 
[SOLUCIONADO]

Hola a todxs, feliz día y gracias por leer! smiley

Con *Buster recién instalado quería probar a usar la GeForce 820M con Blender.

1.- Empecé aquí... y luego he leído foros, wikis, páginas varias sobre la opción bumblebee+optirun+nvidia... no he conseguido habilitar la tarjeta...

​2.- nvidia-detect recomendaba el driver legacy-390xx. Encontré documentación sobre dejar la GeForce como tarjeta única con ese driver, pero no para usarla en un sistema híbrido con Intel y queda claro no sé el modo correcto de instalarlo. ¿Donde puedo buscar?

3.- Le he dado muchas vueltas al bumblebee.conf... y al driver... Fijo hay unas cuantas de burradas... blush

¿Opiniones o ideas?

Salud!!!

PD: Edito para añadir información. *Kernel 4.19.0-6-amd64 #1 SMP Debian 4.19.67-2+deb10u1 (2019-09-20) x86_64 GNU/Linux

 

Vie, 15/11/2019 - 16:51
Panko
Imagen de Panko
Desconectado/a
moderador
se unió: 18/02/16

Por el foro se ha comentado bastante el tema de Optimus. Algo ha cambiado, pero puede que esto te sirva de guia para empezar desde cero (obvia la parte de los drivers libres nouveau, ya  que bumblebee no ofrece soporte para ello ya, solo para los privativos.

https://exdebian.org/comment/5927#comment-5927 En este link se explica como realizar una instalación de privativos de nvidia + bumblebee y su configuración en Debian, adaptalo a  tus  necesidades (básicamente, los nombres de los paquetes es lo que debería cambiar,  de nvidia a nvidia-legacy...).

 

Poco más te puedo decir, ya que hace tiempo que no  uso los drivers privativos de nvidia, y mi equipo de hace 7 años, con Intel 4000 + nvidia 610M funciona perfectamente con los drivers libres y puedo usar la nvidia cuando quiera con DRI_PRIME=1 comando (funciona también en otro asus de unos 4 años, con  otros modelos pero el mismo sistema, sin  configuración alguna por mi parte).

  No hay bar que por bien no venga....
Lun, 25/11/2019 - 07:09 (Responder a #2)
dev_random
Imagen de dev_random
Desconectado/a
se unió: 14/11/19

Edit & update...

Antes reinstalar o de hacer más cambios prefería estudiar un poco más... y he leído por la web de exdebian lo relativo al tema, además de chaparme la guía de Panko. Muy completa! Grazie Mille!

puedo usar la nvidia cuando quiera con DRI_PRIME=1 comando

Esta opción también me puede venir bien para otros programas... ¿funciona tal cual con el nouveau o hay que instalar/configurar algo?.

Salud!!!

PD: Sorry... al marcar solucionado el post se ha borrado la info técnica

Jue, 21/11/2019 - 07:44 (Responder a #3)
Panko
Imagen de Panko
Desconectado/a
moderador
se unió: 18/02/16

DRI_PRIME=1 comando solo sirve para usar la nvidia con nouveau, no te servirá si usas drivers privativos. Para el caso de nouveau, no necesitas configuración extra alguna, el mismo sistema se encarga de la gestión de energía y mantiene la nvidia apagada hasta que vayas a usarla (utiliza vgaswitcheroo para ello). En el caso de los privativos, serán bumblebee y bbswitch quien se encarguen de la gestión de la gráfica.

En el caso de Blender, a mi me ha funcionado con la nvidia que tiene este portátil, que es una 610m, tanto con privativos como con libres, y va para 7 años y algo el equipo ya.

El problema que puedes llegar a tener con el caso de dri_prime y nouveau, es que el sistema considere que no es necesario el uso de la nvidia y la encienda y la apague, ejecutando blender con la intel. Si el uso que le vas a dar va orientado a blender y softwares de edición similares, te recomendaría que usaras mejor bumblebee y los privativos. De todas formas, busca info, que empieza a haber soporte mejorado con los drivers de nvidia (no se si se incluirán los viejos), para primus, cuda, y primus-vk (estos ultimos están en Unstable, no me suena que llegaran a la versión estable).

  No hay bar que por bien no venga....
Lun, 25/11/2019 - 06:51 (Responder a #4)
dev_random
Imagen de dev_random
Desconectado/a
se unió: 14/11/19

Desconocía la opción DRI_PRIME para usar el driver libre y la dGPU. Tampoco sabía de primus, cuda y primus-vk... Más a explorar :) Pensaba que Blender sólo podía habilitar el render con la dGPU a través de cuda y los privativos. La nvidia la tenía de adorno... hasta ahora que la eché en falta.

Panko wrote:
te recomendaría que usaras mejor bumblebee y los privativos

Sips... eso lo tenía claro. Por eso estoy aquí ;) Al ponerme parecía fácil y los errores que aparecían... están descritos en la wiki de Debian y en esta. Hasta tengo la sensación de que he hecho avances estos días... XD...

Eeen fin... una pila de dudas... y mucha manía a nvidia... XD

Salud!!!

Vie, 22/11/2019 - 12:48
debiatonix
Imagen de debiatonix
Desconectado/a
se unió: 07/01/18

Quizás es que buscáis poco y posteáis antes de buscar.
Aqui tienes otra forma que ami me va de perilla en el portátil gamer con esa tecnología.

https://wiki.debian.org/es/NvidiaGraphicsDrivers/Optimus

Lee un poco quizás te sirva.

wink

Pon una debian en tu vidayes

Dom, 24/11/2019 - 09:00 (Responder a #6)
dev_random
Imagen de dev_random
Desconectado/a
se unió: 14/11/19

¿Yo de buscar?... poco. ¿Y de leer?... menos.

Con suerte lo voy mejorando wink

Salud!!!

Dom, 24/11/2019 - 09:28
dev_random
Imagen de dev_random
Desconectado/a
se unió: 14/11/19

Al final lo conseguí. Comento los pasos que he seguido ->

Edit... [Solución chapuzas] 

- Tutorial Nvidia Optimus in Debian 10 x64 (código)

- Wiki.debian-fr.xyz/NVidia_Optimus_Bumblebee

Edit 2... [Solución recomendable descrita en #11]

Salud!!!

Dom, 24/11/2019 - 10:52
Panko
Imagen de Panko
Desconectado/a
moderador
se unió: 18/02/16

Pues.... instalar un paquete que ya tienes y te lo  hace todo, xserver-xorg-video-nvidia.... y no el que has instalado tu. Instalar un paquete externo que no es necesario... meter modulos en blacklist que no es necesario ya que lo hace el mismo sistema durante la instalación de los paquetes si se ha hecho el proceso correctamente... Os gusta ensuciar el  sistema,  de verdad xD

Cruza los dedos para que cualquier actualización no te fastidie el asunto gracias a los paquetes externos.

Pero vamos, si te funciona, pues te funciona.

  No hay bar que por bien no venga....
Dom, 24/11/2019 - 16:44 (Responder a #9)
dev_random
Imagen de dev_random
Desconectado/a
se unió: 14/11/19

Oído cocina! Muchas gracias por las aclaraciones.

Seguiré haciendo pruebas entonces.  A ver si consigo que funcione sin hacer un lío... XD

Salud!!!

Mar, 26/11/2019 - 06:58
dev_random
Imagen de dev_random
Desconectado/a
se unió: 14/11/19

Otra prueba con instalación fresca de Buster + XFCE y siguiendo el método recomendado en #2.

Comento lo que hice para ir solventando los problemas comunes:

- EE... pide instalar primus o virtualgl. Instalo primus

- EE... no puede cargar driver. Edito en /etc/bumblebee/bumblebee.conf para modificar

KernerDriver=nvidia-legacy-390xx

y las rutas

XorgModulePath=/usr/lib/nvidia/legacy390xx,/usr/lib/xorg/modules

LibraryPath=/usr/lib/x86_64-linux-gnu/nvidia/legacy-390xx:/usr/lib/i386-linux-gnu/nvidia/legacy-390xx:/usr/lib/nvidia

- EE... no encuentra dispositivos. Descomento y edito línea con BusID en /etc/bumblebee/xorg.conf.nvidia

 

En este punto es cuando por fin arranca optirun. Resultado --->

:~$ glxgears
312 frames in 5.0 seconds = 62.210 FPS
301 frames in 5.0 seconds = 60.006 FPS

:~$ optirun glxgears
288 frames in 5.0 seconds = 57.566 FPS
301 frames in 5.0 seconds = 60.008 FPS

 

Parece que funciona... pero me extraña que dé esos FPS y que Gimp abra igual de lento que con la Intel.

:~# journalctl -b -p err
nov 26 08:52:05 xxxxxx kernel: nvidia-modeset: Version mismatch: nvidia.ko(390.116) nvidia-modeset.ko(418.74)

:~# grep -Fn '(EE' /var/log/Xorg.8.log
14:	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
61:[    56.839] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
205:[    58.217] (EE) kbd: <default keyboard>: failed to set us as foreground pgrp (Inappropriate ioctl for device)
224:[    58.237] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied

 

Edit... journalctl ya no reporta errores. Explicación de lo de los FPS: https://github.com/amonakov/primus#faq

:~$ vblank_mode=0 optirun -b primus glxgears -info
[···]
ATTENTION: default value of option vblank_mode overridden by environment.
4592 frames in 5.0 seconds = 918.314 FPS
4902 frames in 5.0 seconds = 980.352 FPS

 

Mil gracias por aportar opciones y por los consejos!!!

Mié, 27/11/2019 - 11:52
Panko
Imagen de Panko
Desconectado/a
moderador
se unió: 18/02/16

Si, efectivamente, por defecto la gráfica dedicada seguirá configurada a 60fps, al igual que la integrada. La solución es usar la variable de entorno que has usado, que vale para ambas gráficas, o desactivar vsync para todo el sistema, cosa que no recomiendo a no ser que sea necesario por alguna circunstancia en especial (flickering, parpadeos...).

Para optirun/primusrun o los drivers libres, yo tengo creado un alias, en mi caso como dije para los drivers libres:

~$ alias envidia
alias envidia='DRI_PRIME=1'

así no tienes que andar recordando variables y esas cosas, más comodidad, y que mejor alias que "envidia" xD. De este modo, a la hora de usar la dedicada, ejecutaría envidia comando-a-ejecutar.

~$ envidia glxinfo |grep -i opengl
OpenGL vendor string: nouveau
OpenGL renderer string: NVD9
OpenGL core profile version string: 4.3 (Core Profile) Mesa 19.2.4

 

  No hay bar que por bien no venga....
Jue, 28/11/2019 - 09:05 (Responder a #12)
dev_random
Imagen de dev_random
Desconectado/a
se unió: 14/11/19

Esa es buena...

Panko wrote:
que mejor alias que "envidia" xD.

Gracias por el apunte para usar alias wink Tocará hacer pruebas a ver cual es la fórmula que mejor funciona. En las FAQ de primus aclaran que vblank_mode=0 está bien para hacer comparativas pero que en teoría lo único que hace es gastar energía.

Por cierto, ví en https://exdebian.org/foro/optimuserror-en-el-sistema-errorcannot-access-secondary-gpu-error-could-not-load-gpu-driver

Panko wrote:
Un "problemilla" que viene sucediendo desde, creo, hace un par de actualizaciones del kernel. Abrete una consola y ejecuta

~# aptitude reinstall ~idkms

Esto recompilará los modulos necesarios (nvidia, bbswitch, etc...) y actualizará la imagen initrd para que vuelva a funcionar.

No tenía claro si podía preguntar en aquel hilo o aquí. Esto... ¿me habría valido también para el EE descrito en #11?

Comento... me puse con CUDA (9) -siguiendo esta guía, es en francés...frown pero fue la explicación más actual y clara que encontré- y Blender 2.8... Parece ser que a partir de ahora Cycles requiere una capacidad de computación de 3 para arriba y esta tarjeta no la tiene. Supongo que por eso que...

:~$ clinfo
Number of platforms                               0

Salud!!!