Para TensorFlow me gustaría instalar CUDA. ¿Cómo hago eso en Ubuntu 16.04?
Para TensorFlow me gustaría instalar CUDA. ¿Cómo hago eso en Ubuntu 16.04?
Respuestas:
Hay una guía de instalación de Linux . Sin embargo, básicamente son solo esos pasos:
md5sum cuda_7.5.18_linux.run
. Solo continúe si es correcto.sudo apt-get purge nvidia-cuda*
- si también desea instalar los controladores, entonces sudo apt-get purge nvidia-*
).
sudo service lightdm stop
/etc/modprobe.d/blacklist-nouveau.conf
con los siguientes contenidos:
blacklist nouveau
options nouveau modeset=0
sudo update-initramfs -u
sudo sh cuda_7.5.18_linux.run --override
. Asegúrese de decir y
para el enlace simbólico.
sudo service lightdm start
Vea también: NVIDIA CUDA con Ubuntu 16.04 beta en una computadora portátil (si no puede esperar)
Notas : Sí, existe la posibilidad de instalarlo a través de apt-get install cuda
. Recomiendo encarecidamente no usarlo, ya que cambia las rutas y dificulta la instalación de otras herramientas.
También te puede interesar ¿Cómo puedo instalar CuDNN en Ubuntu 16.04? .
*: No instale los controladores de pantalla con este script. Son viejos. Descargue las últimas de http://www.nvidia.com/Download/index.aspx
El siguiente comando muestra la versión actual de CUDA (última línea):
$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Sun_Sep__4_22:14:01_CDT_2016
Cuda compilation tools, release 8.0, V8.0.44
El siguiente comando muestra la versión de su controlador y la cantidad de memoria de GPU que tiene:
$ nvidia-smi
Fri Jan 20 12:19:04 2017
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.57 Driver Version: 367.57 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce 940MX Off | 0000:02:00.0 Off | N/A |
| N/A 75C P0 N/A / N/A | 1981MiB / 2002MiB | 98% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1156 G /usr/lib/xorg/Xorg 246MiB |
| 0 3198 G ...m,SecurityWarningIconUpdate<SecurityWarni 222MiB |
| 0 6645 C python 1510MiB |
+-----------------------------------------------------------------------------+
Consulte también: Verifique la instalación de CuDNN
No entres en pánico. Incluso si no puede ver nada en su computadora, los siguientes pasos deberían volver al estado anterior:
mount -o remount,rw /
( -
está ?
y /
está -
en el diseño americano)sh cuda_7.5.18_linux.run --uninstall
sudo apt-get install nvidia-361 nvidia-common nvidia-prime nvidia-settings
Instalar los controladores gráficos es un poco complicado. Esto tiene que hacerse sin soporte de gráficos.
dpkg -l | grep -i nvidia
sudo apt-get remove --purge nvidia-WHATEVER
sudo service lightdm stop
reboot
su PC / lista negra el controlador nouveau ( tutorial en alemán )sudo apt-get install linux-headers-$(uname -r)
antes de ejecutar el instalador. ¡esto asegura que los encabezados del núcleo y los paquetes de desarrollo específicos para lo que está ejecutando estén allí y que no se enfrente a instalaciones fallidas de controladores!
Intenté instalar muchas veces a través del archivo .run, pero siempre aparecía algún error y me encontraba con un bucle de inicio de sesión o perdía completamente la pantalla. Por lo tanto, recomendaría usar el archivo .deb y no jugar con el administrador de pantalla.
La Guía de instalación de NVIDIA CUDA para Linux es un excelente enlace que enumera los detalles completos. Asegúrese de seguir cada paso tal como se indica.
Para instalar el controlador Nvidia, puede hacer lo siguiente:
En el menú "Buscar en su computadora" de Ubuntu en la esquina superior izquierda, busque "Controladores adicionales" (también puede hacer Configuración del sistema-> Software y actualizaciones-> Controladores adicionales)
En el menú que aparece, seleccione uno de los controladores de Nvidia y haga clic en "Aplicar cambios" (este paso usa Internet. Si aún falla, su servidor proxy podría estar bloqueando la descarga)
Reinicie su sistema.
Abra una ventana de terminal y escriba nvidia-smi. Si su controlador se ha instalado correctamente, debería ver algo como:
+ ------------------------------------------------- ----- + El | NVIDIA-SMI 3.295.41 Versión del controlador: 295.41 | | ------------------------------- + ----------------- ----- + ---------------------- + El | Nótese bien. Nombre | Bus Id Disp. El | SB / DB volátil ECC | El | Uso de energía / tapa de la temperatura del ventilador | Uso de memoria | GPU Util. Calcular M. | | =============================== + ================= ===== + ====================== | El | 0. Tesla C2050 | 0000: 05: 00.0 en | 0 0 | El | 30% 62 C P0 N / A / N / A | 3% 70MB / 2687MB | 44% Predeterminado | | ------------------------------- + ----------------- ----- + ---------------------- | El | Procesos informáticos: GPU Memory | El | GPU PID Nombre del proceso Uso | | ================================================= ============================ | El | 0. 7336 ./align 61MB | + ------------------------------------------------- ---------------------------- +
Puede instalar fácilmente CUDA de acuerdo con el enlace anterior ahora. En breve:
sudo apt-get install linux-headers-$(uname -r)
Descargue un kit de herramientas desde aquí y luego instale el .deb
archivo (reemplace el nombre en consecuencia)
sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb
entonces corre:
sudo apt-get update
sudo apt-get install cuda
deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 /
. Tenga en cuenta que la instalación degradó el controlador de nvidia-381 a -375. Lo dejé ahí.
Unknown: Unknown This device is not working
Luego me pregunta si quiero usarlo Processor microcode firmware for Intel CPUs
. ¿Debería estar usando eso? Gracias.
También probé enfoques diferentes para instalar Cuda 8.0 en Ubuntu 16.04. Finalmente, estos son los pasos que hacen el truco. Seguí este tutorial y actualicé los pasos corregidos de la siguiente manera.
Actualiza el sistema
apt-get update && apt-get upgrade
Descargue VirtualGL e instálelo. Instalar
dpkg -i virtualgl*.deb
Descargue e instale CUDA 8.0 e instálelo. Sugiero hacerlo vs a través de internet. Como esto,
Instalar dependencias requeridas.
apt-get install linux-headers-$(uname -r)
apt-get install freeglut3-dev libxmu-dev libpcap-dev
Actualice la RUTA del sistema en .bashrc que se puede encontrar en el directorio de inicio. Tenga en cuenta que si instala esas cosas en una ubicación diferente, actualice la ruta de acuerdo con eso.
export PATH=$PATH:/opt/VirtualGL/bin
export PATH=$PATH:/usr/local/cuda/bin
Instalar abejorro-nvidia y primus.
apt-get install bumblebee-nvidia primus
Edite el archivo de configuración de Bumblebee para que Bumblebee sepa que estamos usando el controlador NVIDIA. Actualice la ruta de acuerdo con su sistema. Aquí hay una vista de referencia que ayudará.
sudo nano +22 /etc/bumblebee/bumblebee.conf
Añadir:
[bumblebeed]
ServerGroup=bumblebee
TurnCardOffAtExit=false
NoEcoModeOverride=false
Driver=nvidia
XorgConfDir=/etc/bumblebee/xorg.conf.d
Bridge=auto
PrimusLibraryPath=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus
AllowFallbackToIGC=false
Driver=nvidia
[driver-nvidia]
KernelDriver=nvidia
PMMethod=auto
LibraryPath=/usr/lib/nvidia-367:/usr/lib32/nvidia-367
XorgModulePath=/usr/lib/xorg,/usr/lib/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia
Driver=nouveau
[driver-nouveau]
KernelDriver=nouveau
PMMethod=auto
XorgConfFile=/etc/bumblebee/xorg.conf.nouveau
Ejecute lo siguiente y registre la dirección PCI de su tarjeta de video.
$ lspci | egrep 'VGA|3D'
00:02.0 VGA compatible controller: Intel Corporation Device 5916 (rev 02)
01:00.0 3D controller: NVIDIA Corporation Device 179c (rev a2)
Edite el archivo xorg.conf.nvidia para que sepa la dirección PCI (01: 00.0 para mí) de su tarjeta de video. Actualice la dirección PIC como se muestra a continuación en la sección "ServerLayout"
sudo nano /etc/bumblebee/xorg.conf.nvidia
Añadir:
Section "ServerLayout"
Identifier "Layout0"
Option "AutoAddDevices" "false"
Option "AutoAddGPU" "false"
BusID "PCI:01:00.0"
Reinicie el sistema y diviértase ejecutando algunos códigos de muestra.
sudo shutdown -r now
Los pasos que funcionaron para mí:
sudo apt-get install nvidia-cuda-toolkit O 1 '. las instrucciones de instalación aquí
Debe seleccionar entre Software y actualizaciones / Controladores adicionales el controlador nvidia (375, en mi contexto)
Siga la pantalla azul cuando reinicie y solo desde allí deshabilite el arranque seguro ingresando su contraseña establecida durante la instalación del controlador nvidia. (cualquier inicio seguro que deshabilite a través del BIOS no funcionó para mí).
Ahora la salida de la prueba de instalación es exitosa.
He escrito una publicación de blog sobre esto hace un tiempo - Instalación del kit de herramientas Nvidia CUDA - ubuntu 16.04 LTS - notas /
Mi entorno: arranque dual Windows 10 y Ubuntu 16.04 LTS.
Copiando y pegando aquí algunos aprendizajes importantes. Consulte la publicación del blog para obtener instrucciones detalladas (solo para evitar duplicados)
Consulte la instalación del kit de herramientas Nvidia CUDA - ubuntu 16.04 LTS - notas /
Lo puse a trabajar después de leer varias publicaciones: ya tenía una tarjeta ATI en la computadora que resultó ser muy útil. Instalé GTX 1070 junto con ATI y comencé a instalar Kubuntu 16.04. Solo la pantalla conectada a la tarjeta ATI tenía una imagen inicialmente, lo que me permitió instalar el controlador NVIDIA-Linux-x86_64-367.27.run descargado del sitio web del proveedor. Para instalar CUDA, descargué el archivo cuda_7.5.18_linux.run. Instalé el kit de herramientas de Cuda usando dos interruptores:
cuda_7.5.18_linux.run --silent --toolkit
Las muestras de Cuda también se pueden instalar desde el archivo .run. Un problema era que a cuda no le gusta gcc5. Así lo hice sudo apt-get install gcc-4.8
y luego cambié el gcc predeterminado a esta versión:
cd /usr/bin/
sudo unlink gcc
sudo ln -s gcc4.8 gcc
sudo unlink g++
sudo ln -s g++-4.8 g++
Reemplacé gcc a gcc5 después de instalar cuda. La compilación de las muestras de Cuda también debe hacerse con gcc4.8, gcc4.9 podría funcionar pero no lo intenté.
Un método generalmente preferido es instalar SW a través de archivos deb cuando estén disponibles, ya que proporcionan una forma más robusta de manejar dependencias y un método más confiable para eliminar SW. El candidato de la versión CUDA 8.0 estaba disponible para 16.04 (en la zona de desarrollo) de esa manera y ahora el CUDA 8.0 para Ubuntu 16.04 está disponible a través de archivos deb (local) y (red): https://developer.nvidia.com/cuda -descargas
Solo un amable recordatorio, Ubuntu 16.04 podría no instalar cuda en la ubicación supuesta /usr/local/cuda-8.0.61
. Por export PATH=/usr/local/cuda-8.0.61/bin${PATH:+:${PATH}}
lo tanto, puede no funcionar.
Cuando intentaba instalar "cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb" en Ubuntu 16.04, simplemente seguí las instrucciones aquí http://docs.nvidia.com/cuda/cuda -installation-guide-linux / index.html # post-installation-actions . Sin embargo, no pude compilar cuda-install-samples-8.0.61.sh \ home o nvcc -V
Resultó que Ubuntu instaló cuda en /usr/local/cuda-8.0
lugar de la ubicación supuesta /usr/local/cuda-8.0.61
. Por lo tanto he cambiado export PATH=/usr/local/cuda-8.0.61/bin${PATH:+:${PATH}}
en export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
y he instalado con éxito CUDA.
La respuesta aceptada no funcionó para mi caso. Estaba instalando CUDA 8.0 en mi laboratorio con las siguientes especificaciones:
La siguiente guía instala primero el controlador NVIDIA y luego instala CUDA 8.0.
En la lista, encuentre su tarjeta gráfica. Entre los controladores que se pueden usar para la tarjeta, elija el controlador propietario de NVIDIA. Luego presione el botón [Aplicar cambios]. En mi caso, bajo el nombre de la tarjeta gráfica "NVIDIA Corporation: GM107M [Geforce GTX 950M]", había dos selecciones:
Elimine los controladores de video instalados por defecto con $ sudo apt remove xserver-xorg-video*
.
cuda_8.0.61_375.26_linux.run
.$ sudo sh cuda_8.0.61_375.26_linux.run
.
375.66
, que es superior a la 375.26
contenida en el instalador, elegí no instalar.ld.so.conf
y se produce el siguiente error: libEGL.so.1 is not a symbolic link
siga las instrucciones de este enlace .Esta es una respuesta muuuuuuuuuuuuuuuuuuuuu gran vez como mi computadora portátil mientras escribía. Sin embargo, prefiero mantenerlo por mucho tiempo, ya que también puede ser útil para otras personas;) La mejor parte de mi respuesta comienza en Editado-Actualizado
Entonces, leí todas las respuestas aquí y en otros lugares, no sé por qué, pero cada una de ellas me causa un problema :(
Después de 4 días, volver a instalar Linux de aquí para allá es la forma en que funcionó para mí.
Antes de pasar al procedimiento principal, quiero mencionar un método alternativo.
Método alternativo si está utilizando una computadora portátil:
Para que pueda cambiar entre su nvidia y su intel gpu en su computadora portátil usando
sudo prime-select intel
sudo prime-select nvidia
En otras palabras, puede cambiar a Intel e instalar nvidia y el interruptor volver a Intel para usos normales y siempre que desee utilizar el aprendizaje profundo cambie a nvidia one.
De todas formas,
déjame hablar sobre el método principal que finalmente funciona para mí (la información aquí se obtiene principalmente de Link ):
Eliminar y purgar todas las cosas de nvidia / cuda existentes:
sudo apt-get remove --purge nvidia-*
sudo apt-get purge nvidia-cuda*
sudo apt-get purge nvidia-*
sudo /usr/bin/nvidia-uninstall
sudo /usr/local/cuda-8.0/bin/uninstall_cuda_8.0.pl
sudo rm -rf /etc/modprobe.d/blacklist-nouveau.conf
Luego, simplemente actualizamos todo:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo reboot
Ahora, existe la posibilidad de que no pueda iniciar sesión y quedar atrapado en el bucle ...
No se preocupe, lo enfrenté más de 50 veces ...
presione ctr+alt+F2
escriba su nombre de usuario y contraseña
ahora escriba estos:
sudo service lightdm stop
Opcional, algunas personas también necesitan escribir esto, honestamente identificar cuál es su uso: sudo init 3
sudo nano /etc/modprobe.d/blacklist-nouveau.conf
añadir
blacklist nouveau
options nouveau modeset=0
a él y guárdelo y salga.
Luego escriba:
sudo update-initramfs -u
vaya al archivo que tiene el archivo cuda .run allí y escriba:
sudo sh cuda_8.0_linux.run --override
sudo service lightdm start
sudo reboot
Entonces, si tienes suerte, deberías poder iniciar sesión ahora. Como puede suponer, no tuve suerte y todavía no pude iniciar sesión. Así que tuve que presionar ctr+Alt+F2
nuevamente y hacer lo siguiente:
sudo ubuntu-drivers autoinstall
sudo reboot
Ahora podría iniciar sesión finalmente.
Ahora es el momento de establecer los caminos y verificar las instalaciones.
tipo:
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64 ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
nvidia-smi
nvcc -V
debería mostrarte que tienes cuda 8.
También en caso de que también pueda hacer esto:
export PATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64
gedit ~/.bashrc
agregue estos al final:
export PATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64
# Added by me on 2013/06/24
PATH=~/bin:$PATH
export PATH
Guardar y salir de gedit. Tipo:
sudo ldconfig /usr/local/cuda-8.0/lib64
Una pregunta para las personas que saben más que yo:
Así que todo parece funcionar, pero cuando apago / reinicio mi sistema durante unos segundos, se muestra
Así que todo parece funcionar, pero cuando apago / reinicio mi sistema durante unos segundos muestra "No se pudo iniciar la carga de los módulos del kernel" . Intenté esta publicación pero no está ayudando, avíseme si sabe cómo solucionarlo.
----------------
Editado-Actualizado
Adivina qué, lo jodí de nuevo.
Pero esta vez llegué con una solución mucho más fácil. y aquí está el punto principal: a veces necesitamos decir NO
Esto es lo que funciona realmente bien para mí. después de purgar y eliminar todo y reiniciar sudo, haga esto:
sudo ubuntu-drivers autoinstall
sudo reboot
presione ctr+alt+F2
escriba su nombre de usuario y contraseña
ahora escriba estos:
sudo service lightdm stop
sudo sh cuda_8.0_linux.run
IMPORTANTE: durante la instalación, la primera pregunta pide volver a instalar el controlador, DIGA NO a esta pregunta f **** de la madre. Diga sí al resto de ellos: D después de terminar.
sudo service lightdm start
press `alt+ctr+F7`
inicia sesión en tu querida PC
¿Funcionó? De nada :)
Inicialmente intenté hacer esas sudo lightdm stop
cosas, pero condujo a un bucle de inicio de sesión. Entonces encontré un nuevo método:
Copie el archivo cuda_9.0.176_384.81_linux.run
(en mi caso fue runfile) a cualquier directorio /home/<your_username>
como Descargas o Documentos o en cualquier lugar.
Después de eso, reinicie su computadora y cuando aparezca el menú de inicio de Ubuntu vaya a 'Opciones avanzadas → Modo de recuperación' (si no aparece, mantenga presionada la shifttecla durante el inicio)
Seleccione 'soltar al shell raíz', presione ENTER para continuar cuando se le solicite presionar enter o Ctrl-D.
Editar : Ejecutar mount -o rw,remount /
para obtener privilegios de lectura y escritura.
Vaya a ese directorio donde ha copiado el archivo de instalación de cuda.
Ejecute el comando según el tipo de archivo, puede encontrarlo en https://developer.nvidia.com/cuda-downloads después de seleccionar el objetivo deseado como lo hizo anteriormente. En mi caso fuesudo sh cuda_*.run
Este es un paso importante y proceda lenta y cuidadosamente , cuando finalice la larga información / acuerdo ACEPTARLO .
Luego le preguntará acerca de la INSTALACIÓN DEL CONTROLADOR NVIDIA, presione sí ( y ).
Luego, probablemente preguntará acerca de la instalación de las bibliotecas OpenGL , omítala porque puede anular la instalación normal de su controlador y causar problemas , en mi caso lo hizo. Entonces presione no ( n ).
Luego continúe con todas las instalaciones y se completará automáticamente y, por fin, mostrará el archivo de registro/tmp
.
Ahora reinicie el sistema ingresando el comando de reinicio en el shell del modo de recuperación.
Después de que su sistema se inicie, es posible que no muestre los archivos de muestra de CUDA, ya que debe completar estos dos pasos obligatorios posteriores a la instalación:
[A] Agregue la ruta correcta para cuda.
[B] Agregue la ruta correcta para LD_LIBRARY_PATH
Agregue la ruta al archivo ~ / .bashrc y ejecútelo source ~/.bashrc
para que la ruta sea permanente para que no desaparezca después de reiniciar, confirme cerrando el terminal actual y ejecutando el segundo comando en el paso 12 nuevamente en otro terminal.
Para verificar si CUDA está instalado correctamente o no ejecuta los dos comandos mencionados a continuación y verifica si nvcc -V
da salida o no
cat /proc/driver/nvidia/version
nvcc -V
Ve a ~/NVIDIA_CUDA-9.0_Samples/1_Utilities/deviceQuery
, luego ejecuta estos:
make
./deviceQuery
y hacer coincidir la salida con esta imagen , puede ser diferente pero el formato de salida debe coincidir.
Felicitaciones por haber instalado CUDA Toolkit con éxito . Después de eso, vaya aquí y pruebe algunos ejemplos Vaya a 7.2 Acciones recomendadas .
CORTESÍA - DOCUMENTOS DE KIT DE HERRAMIENTAS DE CUDA
PD: cualquier tipo de crítica es bienvenida, se disculpa de antemano por cualquier error, esta es mi primera respuesta en askubuntu.com.
MUCHAS GRACIAS POR LEER:)
Habiendo hecho esto varias veces, perdiendo con éxito / sin éxito mi pantalla, viniendo aquí, obteniendo información, algunas librerías cuda que no están en el camino, faltan, no están instaladas, la forma más sensata es instalar los controladores de Linux para su tarjeta nvidia https: // medium.com/techlogs/install-the-right-nvidia-driver-for-cuda-in-ubuntu-2d9ade437dec y trabaja en imágenes de docker nvidia-cuda - base o desarrollo.
Haga un mapeo de volumen desde su carpeta de código al contenedor - instale lo que quiera - Lo mismo con trabajar con keras o tensorflow o simplemente opencv puro
docker run --net = host --runtime = nvidia -it -v ~ / coding: / coding nvidia / cuda: / bin / bash
Nota TF también viene con su acoplador