Linux desinstale la versión anterior de CUDA y el controlador instalado e instale la nueva versión de CUDA y la instalación de cudnn

La ola de uso de GPU, CUDA y cuDNN para cálculos de aprendizaje profundo ha estado sucediendo durante muchos años. Durante este período, el controlador de la tarjeta gráfica y la versión CUDA, así como la versión del kit de herramientas de aprendizaje profundo cudnn, se han actualizado muchas veces. . Con el lanzamiento de la nueva versión 2.0 de TensorFlow y la versión 1.3 de Pytorch, las máquinas que usamos para el aprendizaje profundo también necesitan actualizar el entorno operativo a la última versión, especialmente si todavía usa CUDA 8.0. Este artículo presentará cómo desinstalar la versión anterior de CUDA (como la versión 8.0) e instalar la nueva versión de CUDA (versión 10.0)

Preparación de material

Primero, debe descargar los archivos subordinados del sitio web oficial de NVIDIA, uno es cuda10.0 y el otro es cudnn7.4

  • cuda_10.0.130_410.48_linux
  • cudnn-10.0-linux-x64-v7.4.2.24.solitairetheme8 es el
    propio sistema redhat, la versión de cuda descargada es:
    Inserte la descripción de la imagen aquí

Desinstale la versión anterior de CUDA

Antes de desinstalar, debe cerrar algunos servicios relacionados con imágenes, como X display manager lightdm. Presione ctrl + Alt + F1 en el teclado, ingrese la cuenta y la contraseña desde la línea de comando pura para iniciar sesión en el terminal, y luego ingrese el siguiente comando:

$ sudo  systemctl stop lightdm
$ cd  /usr/local/cuda-8.0/bin
$ sudo  ./uninstall_cuda_8.0.pl

Generalmente, si cuda está instalado, aparecerá un mensaje para verificar el registro de instalación, de la siguiente manera:

RROR: Parece que un módulo del kernel de NVIDIA 'nvidia-uvm' ya está cargado en su kernel. Esto puede deberse a que está en uso (por ejemplo, por un servidor X, un programa CUDA o NVIDIA Persistence Daemon), pero esto también puede suceder si su kernel se configuró sin soporte para la descarga de módulos. Asegúrese de salir de cualquier programa que pueda estar usando la (s) GPU (s) antes de intentar actualizar su controlador. Si no se están ejecutando programas basados ​​en GPU, sabe que su kernel admite la descarga de módulos y aún recibe este mensaje, entonces puede haber ocurrido un error que haya corrompido el recuento de uso de un módulo del kernel de NVIDIA, para lo cual el remedio más simple es reiniciar su ordenador.
ERROR: La instalación ha fallado. Por favor vea el archivo'/var/log/nvidia-installer.log'Puede encontrar sugerencias sobre cómo solucionar problemas de instalación en el archivo README disponible en la página de descarga de controladores de Linux en www.nvidia.com.

Sin embargo, si surgen problemas específicos, Baidu los puede resolver directamente. Si el problema persiste, reinícielo.
Solución 1: Si ha instalado cuda anteriormente, esto generalmente se debe a que el controlador anterior no se ha desinstalado. En este momento, la desinstalación del controlador NVIDIA es la siguiente:

yum remove "*cublas*" "cuda*"
yum remove "*nvidia*"

También hay una instrucción de desinstalación:

To uninstall  the NVIDIA Driver, run nvidia-uninstall

Instalar nueva versión de CUDA

Busque los archivos cuda 10 y cudnn 7.4 que hemos descargado, y primero ingrese el siguiente comando para instalar cuda 10.

$ sudo sh cuda_10.0.130_410.48_linux

Lo primero que aparece es sobre el acuerdo de usuario de CUDA, puede presionar directamente "Ctrl + C" para omitir, e ingresar "accpet" para aceptar el acuerdo.

Logging to  /tmp/cuda_install_11026.log
Using more to  view the EULA.
End User  License Agreement
--------------------------
Preface
-------
The Software  License Agreement in Chapter 1 and the Supplement
in Chapter 2  contain license terms and conditions that govern
the use of  NVIDIA software. By accepting this agreement, you
agree to  comply with all the terms and conditions applicable
to the  product(s) included herein.
 
NVIDIA Driver
Description
This package  contains the operating system driver and
fundamental  system software components for NVIDIA GPUs.
 
NVIDIA CUDA  Toolkit
 
Description
 
The NVIDIA  CUDA Toolkit provides command-line and graphical
tools for  building, debugging and optimizing the performance
of applications  accelerated by NVIDIA GPUs, runtime and math
libraries,  and documentation including programming guides,
user manuals,  and API references.
 
Default  Install Location of CUDA Toolkit
 
Windows  platform:
 
%ProgramFiles%\NVIDIA  GPU Computing Toolkit\CUDA\v#.#
 
Linux  platform:
 
/usr/local/cuda-#.#
 
Mac platform:
 
/Developer/NVIDIA/CUDA-#.#
 
NVIDIA CUDA  Samples
 
Description
 
This package  includes over 100+ CUDA examples that demonstrate
various CUDA  programming principles, and efficient CUDA
implementation  of algorithms in specific application domains.
Do you accept  the previously read EULA?
accept/decline/quit:  accept

Debido a la necesidad de actualizar la versión del controlador NVIDIA, hay un "¿Instalar controlador de gráficos acelerados NVIDIA para Linux-x86_64 410.48?" Debe ingresar "y" para instalar la nueva versión del controlador. (Esto se puede instalar o no instalar).

Install  NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?
(y)es/(n)o/(q)uit:  y    ( 如果电脑上有了显卡driver,可以不用安装)
Do you want  to install the OpenGL libraries?
(y)es/(n)o/(q)uit  [ default is yes ]: y
 
Do you want  to run nvidia-xconfig?
This will  update the system X configuration file so that the NVIDIA X driver
is used. The  pre-existing X configuration file will be backed up.
This option  should not be used on systems that require a custom
X  configuration, such as systems with multiple GPU vendors.
(y)es/(n)o/(q)uit  [ default is no ]:
 
Install the  CUDA 10.0 Toolkit?
(y)es/(n)o/(q)uit:  y
 
Enter Toolkit  Location
 [ default is /usr/local/cuda-10.0 ]:
 
Do you want  to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit:  y
 
Install the  CUDA 10.0 Samples?
(y)es/(n)o/(q)uit:  y  (这个也可以不用安装)
 
Enter CUDA  Samples Location
 [ default is /home/gpu ]:
 
Installing  the NVIDIA display driver...
Installing  the CUDA Toolkit in /usr/local/cuda-10.0 ...
Missing  recommended library: libGLU.so
Missing  recommended library: libXmu.so
 
Installing  the CUDA Samples in /home/gpu ...
Copying  samples to /home/gpu/NVIDIA_CUDA-10.0_Samples now...
Finished  copying samples.
 
===========
= Summary =
===========
 
Driver:   Installed   (已有驱动可以不用安装)
Toolkit:  Installed in /usr/local/cuda-10.0
Samples:  Installed in /home/gpu, but missing recommended  libraries  (也可以不用安装)
 
Please make  sure that
 -    PATH includes /usr/local/cuda-10.0/bin
 -    LD_LIBRARY_PATH includes /usr/local/cuda-10.0/lib64, or, add  /usr/local/cuda-10.0/lib64 to /etc/ld.so.conf and run ldconfig as root
 
To uninstall  the CUDA Toolkit, run the uninstall script in /usr/local/cuda-10.0/bin
To uninstall  the NVIDIA Driver, run nvidia-uninstall
 
Please see  CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-10.0/doc/pdf for  detailed information on setting up CUDA.
 
Logfile is  /tmp/cuda_install_11026.log
Signal  caught, cleaning up

El mensaje anterior después de la instalación nos enseña cómo configurar el entorno:

Please make  sure that
 -    PATH includes /usr/local/cuda-10.0/bin
 -    LD_LIBRARY_PATH includes /usr/local/cuda-10.0/lib64, or, add  /usr/local/cuda-10.0/lib64 to /etc/ld.so.conf and run ldconfig as root

Cuando finalmente aparece este tipo de salida y no hay otros errores, incluso si la nueva versión de CUDA se instaló correctamente. Luego, necesitamos instalar y configurar nuevas variables de entorno. En el último "~ / .bashrc", agregue:

export  PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export  LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export  CUDA_HOME=/usr/local/cuda

Entre ellos, los dos primeros (PATH, LD_LIBRARY_PATH) son las variables recomendadas en el documento de instalación del sitio web oficial de CUDA. El tercero (CUDA_HOME) es una variable requerida por la versión de tensorflow-GPU.
Después de configurar la variable de entorno, debe actualizarla; de lo contrario, no entrará en vigencia de inmediato. También puede reiniciar la computadora para que se apliquen las variables de entorno.

$ source  ~/.bashrc

Nota : La configuración anterior es básicamente necesaria, lo que equivale a agregar una biblioteca dependiente en C ++, que requiere agregar lib, bin, include y otras rutas de archivo a VS. Entre ellos, / usr / local / cuda es un enlace suave. Si ya existe, el cuda recién instalado no puede reescribirlo. Puede crearlo manualmente en este momento. Nvcc está en el directorio bin de cuda, de la siguiente manera:

rm -rf /usr/local/cuda
mkdir /usr/local/cuda

sudo ln -s /usr/local/cuda-9.0/ /usr/local/cuda/

nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Sep__1_21:08:03_CDT_2017

Luego, podemos verificar los resultados de la nueva versión de la instalación del controlador de la tarjeta gráfica, porque este comando es solo después de que se instala el controlador.

$ nvidia-smi
Fri Oct 27  15:46:57 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI  410.48                 Driver Version:  410.48                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name         Persistence-M| Bus-Id         Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0   Tesla P100-PCIE...  Off  | 00000000:06:00.0 Off |                    0 |
| N/A   29C     P0    24W / 250W |      0MiB / 12198MiB |      0%       Default |
+-------------------------------+----------------------+----------------------+
 
+-----------------------------------------------------------------------------+
|  Processes:                                                        GPU  Memory |
|  GPU        PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

Finalmente restaure la visualización de la imagen:

$ sudo  systemctl start lightdm

Configurar la biblioteca cudnn

Primero, cambie el nombre del archivo cudnn para facilitar la descompresión. Los nombres de archivo de otras versiones deben modificarse de acuerdo con la situación real.

$ cp cudnn-10.0-linux-x64-v7.4.2.24.solitairetheme8  cudnn-10.0-linux-x64-v7.4.2.24.tgz
$ tar zxvf cudnn-10.0-linux-x64-v7.4.2.24.tgz
$ sudo cp  cuda/include/cudnn.h /usr/local/cuda/include
$ sudo cp  cuda/lib64/libcudnn* /usr/local/cuda/lib64

** Nota: ** Si no ha creado un enlace suave, cópielo en la ubicación de instalación. Lo
siguiente es modificar los permisos de acceso al archivo:

$ sudo chmod  a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

Finalmente, terminamos de configurar.

Supongo que te gusta

Origin blog.csdn.net/yangdashi888/article/details/103842791
Recomendado
Clasificación