domingo, 6 de mayo de 2018

NVIDIA drivers + CUDA 9 en Ubuntu 17.10


Sea que te encuentres trabajando en proyectos de deep learning, te hayas armado un rig para minería o te guste tener tu cluster para crackear hashes de contraseñas, necesitarás el poder de procesamiento de 1 ó varias GPU's.

Si optaste por utilizar una GPU NVIDIA la instalación de los drivers/CUDA en Linux tiene fama de no ser amigable. De hecho, en distros antiguas, no lo es.  Como punto a favor, en la última release de Ubuntu a la fecha (17.10) hay una manera muy sencilla de lograr tener todo correctamente instalado en pocos minutos.

Antes de comenzar, asegurate que tu GPU está correctamente conectada a nivel de hardware. Si no está correctamente alimentada, no importa cuanto intentes que los drivers se instalen, solo lograrás que tu Ubuntu se rompa una y otra vez.... (si, hablo con conocimiento de causa :-).

INSTALACIÓN DE DRIVERS NVIDIA
La gente que me conoce sabe muy bien que odio usar la shell gráfica en linux, siempre hago todo por línea de comandos, pero esta vez, para evitar inconvenientes al desactivar por consola algunos módulos de los drivers por defecto para los gráficos, haré una excepción.

Nos dirigimos al menú "Activities" o "Actividades" (si instalaron el Ubuntu en español), y en el campo de búsqueda escribimos "Software & Updates". De los tres programas que aparecen, elegimos el primero, aquel que tiene como ícono una caja y el mundo.

Nos encontraremos con la siguiente ventana:



Las primeras 4 casillas de la pestaña "Ubuntu Software" deben estar marcadas, tal como se ve en la imagen superior.

Luego nos dirigimos a la pestaña "Additional Drivers" en la cual podremos notar que, si bien nuestra GPU NVIDIA es detectada (en este caso es una GTX 1080), se está utilizando otro driver por defecto: Nouveau.



Vamos a cambiar eso seleccionando la primera opción: "Using NVIDIA binary driver - version 384.111 from nvidia-384 (proprietary, tested)" y presionamos el botón "Apply" para aplicar los cambios. Tomará unos minutos...


Una vez que termine, veremos el ícono verde al costado de la versión de nuestra GPU, y en la parte inferior un mensaje que indica que estamos utilizando un driver propietario.


 Momento de Reiniciar el equipo.


DESCARGA E INSTALACIÓN DE CUDA 9
Descargamos el paquete de instalación dirigiéndonos a la siguiente página: https://developer.nvidia.com/cuda-90-download-archive.

Allí seleccionaremos las opciones: Linux -> x86_64 -> Ubuntu -> 17.04 (si, ya sé que instalamos la 17.10 pero utilizaremos este paquete) -> deb [local].


Descargamos el "Base installer" de 1.2GB. 



Una vez que terminó la descarga, ahora sí abrimos una terminal de comandos, nos movemos a la carpeta donde descargamos el archivo y ejecutamos los siguientes comandos:

sudo dpkg -i cuda-repo-ubuntu1704-9-0-local_9.0.176-1_amd64.deb
sudo apt-key add /var/cuda-repo-9-0-local/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda  

Tomará unos minutos, una vez que termine reiniciamos nuevamente el equipo.
Finalmente podemos ejecutar - por ejemplo - el comando de hashcat -I para ver si hemos instalado todo correctamente:


 

Sé que este fue un paso a paso extremadamente sencillo, pero la realidad es que no hay mucha documentación online de como hacer funcionar los drivers NVIDIA/CUDA en Linux, mucho menos en la última versión, es por eso que lo escribí. Espero que les sea de utilidad! Hasta la próxima...

Author: Sheila A. Berta
Tw: @UnaPibaGeek.
Web: www.semecayounexploit.com.