He encontrado media docena de publicaciones sobre esto en toda la web, pero ninguna de ellas responde realmente a la pregunta.
Quiero configurar mi GPU nvidia para hacer solo cálculos, no para manejar la pantalla. Pero cuando cambio a usar la GPU Intel en la configuración nvidia-prime, ya no puedo cargar el módulo nvidia.
modprobe: ERROR: could not insert 'nvidia_352': No such device
Sin el módulo, CUDA no funciona, obviamente.
Entonces, ¿qué está haciendo exactamente nvidia-prime que hace que sea imposible cargar el módulo? No está en la lista negra. No hay un archivo xorg.conf, entonces, ¿cómo sabe el sistema usar la GPU Intel en lugar de la discreta?
Estoy en una Dell 5510 Precision con Ubuntu 14.04 instalado de fábrica, y mi GPU es Quadro M1000M.
Algunos sugieren usar abejorros, pero eso no debería ser necesario para cargas de cómputo puro.
Además, aparentemente el abejorro puede cargar el módulo. Entonces, ¿qué está haciendo exactamente?
Actualización: Entonces, ¿por qué siempre parece que encuentro la respuesta cuando finalmente publico una pregunta, después de horas de tratar de resolverla? Esto es solo una respuesta parcial, pero estoy en algo.
Hasta ahora he determinado que Prime hace al menos dos cosas:
- Apague la GPU con bbswitch.
- Cambia las alternativas para /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf.
Al usar bbswitch para volver a encender la GPU, ahora puedo cargar el módulo NVIDIA.
Pero la pregunta sigue siendo: ¿Cuál es la mejor manera de configurar el sistema para usar la tarjeta NVIDIA solo para cálculos?
¿Debo configurar nvidia-prime para usar la GPU Intel e intentar desentrañar manualmente lo que eso hizo para que CUDA funcione?
¿Cómo me aseguro de que el sistema todavía use la GPU Intel para la pantalla?
¿Cómo podría simplemente deshabilitar NVIDIA prime y configurarlo todo manualmente?
¿O debería ceder y usar Bumblebee y optirun? ¿Cuáles son las desventajas de esto, si las hay?
¿Alguna recomendación?