Configuración de ubuntu18.04 nvidia driver + tensorflow-gpu1.15.0 resumen

Instalar controlador de gráficos

1. Deshabilitar el arranque seguro

Este paso es muy importante. Si no está deshabilitado, se informará un error.

Primero, ingrese el BIOS de acuerdo con la condición de su computadora (F12 o F10).
Cambié la opción de Arranque seguro a Desactivado.
Inserte la descripción de la imagen aquí
Utilicé una computadora Thor. Después de modificar esto, reinicié y restauré a Activar. Otras computadoras también pueden tener esta situación. Es necesario ajustar el modo personalizado. Es cambiar la siguiente columna, Cambiar La personalización está habilitada, de modo que el arranque seguro se deshabilitará automáticamente.
Inserte la descripción de la imagen aquí

2. Desactivar nouveau

Edite el archivo blacklist.conf

sudo vim /etc/modprobe.d/blacklist.conf

Inserte las siguientes dos líneas al final del archivo

blacklist nouveau
options nouveau modeset=0

Sistema de actualización

sudo update-initramfs -u

Reiniciar el sistema

Verifique que nouveau esté deshabilitado

lsmod | grep nouveau

No se muestra información que indique que nouveau ha sido deshabilitado, y luego puede instalar el controlador de la tarjeta gráfica nvidia.

3. Encuentre el modelo de tarjeta gráfica de su propia computadora en el sitio web oficial de NVIDIA y descargue el controlador correspondiente. Sitio web: http://www.nvidia.cn

Copie el archivo ejecutado descargado en el directorio de inicio

4. Ingrese a la interfaz de línea de comando en ubuntu

Soy Ctrl + Alt + F3, diferentes computadoras serán diferentes.

Primero cambie al usuario root:

su root

Cierre la interfaz gráfica, habrá errores si no se ejecuta.

service lightdm stop 

Luego desinstale el controlador original:

apt-get remove nvidia-*

Dar permiso de ejecución al archivo de ejecución de la unidad

chmod  a+x [NVIDIA run文件]

Instalar:

./[NVIDIA run文件] -no-x-check -no-nouveau-check -no-opengl-files 

-no-x-check: apaga el servicio X al instalar el controlador
-no-nouveau-check: deshabilita nouveau al instalar el controlador
-no-opengl-files: solo instala los archivos del controlador, no los archivos OpenGL para
evitar el problema del inicio de sesión circular.

Opciones durante la instalación:

  1. Continuar la instalación
  2. Instalar sin firmar

Otras opciones están bien o sí.

Monte el controlador Nvidia:

modprobe nvidia

Compruebe si el controlador se instaló correctamente:

nvidia-smi

Inserte la descripción de la imagen aquí

conda install tensorflow-gpu1.15.0

La razón para elegir esta versión es que es una versión sucesora y puede ser compatible con los contenidos de 2.0.0.
Y a través de la instalación de conda puede configurar automáticamente el cuda y el cudnn apropiados.

conda install tensorflow-gpu=1.15.0

Informe
y resolución de errores: en primer lugar, el error de descarga puede ocurrir debido al problema de la velocidad de la red. Debe configurar conda como la fuente de Tsinghua:
Ejecute el siguiente comando:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

En segundo lugar recibí el siguiente error:

Verifying transaction: failed

RemoveError: 'setuptools' is a dependency of conda and cannot be removed from
conda's operating environment.

Uso inicial

conda install -c anaconda setuptools

Pero aún informó un error.

La sensación es que la versión conda necesita ser actualizada:

conda update --force conda

Resuelto con éxito

Verificar gpu

import tensorflow as tf
a = tf.test.is_built_with_cuda()  # 判断CUDA是否可以用
b = tf.test.is_gpu_available(
    cuda_only=False,
    min_cuda_compute_capability=None
)                                  # 判断GPU是否可以用
print(a)
print(b)

El resultado es:
True
True significa
que CUDA y GPU están disponibles

import tensorflow as tf
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

El resultado es el siguiente:

2020-04-13 22:44:58.936998: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
2020-04-13 22:44:58.968713: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency: 2799925000 Hz
2020-04-13 22:44:58.969389: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x55aab2112f20 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-04-13 22:44:58.969426: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version
2020-04-13 22:44:58.972287: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcuda.so.1
2020-04-13 22:44:59.320078: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:983] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2020-04-13 22:44:59.320520: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x55aab1df0a10 initialized for platform CUDA (this does not guarantee that XLA will be used). Devices:
2020-04-13 22:44:59.320539: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): GeForce GTX 1050 Ti, Compute Capability 6.1
2020-04-13 22:44:59.320701: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:983] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2020-04-13 22:44:59.320951: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1618] Found device 0 with properties: 
name: GeForce GTX 1050 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.62
pciBusID: 0000:01:00.0
2020-04-13 22:44:59.357052: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.0
2020-04-13 22:44:59.361052: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcublas.so.10.0
2020-04-13 22:44:59.400897: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcufft.so.10.0
2020-04-13 22:44:59.445225: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcurand.so.10.0
2020-04-13 22:44:59.446472: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusolver.so.10.0
2020-04-13 22:44:59.497395: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcusparse.so.10.0
2020-04-13 22:44:59.528163: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7
2020-04-13 22:44:59.528302: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:983] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2020-04-13 22:44:59.528658: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:983] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2020-04-13 22:44:59.528860: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1746] Adding visible gpu devices: 0
2020-04-13 22:44:59.528901: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudart.so.10.0
2020-04-13 22:44:59.529559: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1159] Device interconnect StreamExecutor with strength 1 edge matrix:
2020-04-13 22:44:59.529571: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1165]      0 
2020-04-13 22:44:59.529576: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1178] 0:   N 
2020-04-13 22:44:59.529651: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:983] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2020-04-13 22:44:59.529887: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:983] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2020-04-13 22:44:59.530106: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1304] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 3686 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1)
Device mapping:
/job:localhost/replica:0/task:0/device:XLA_CPU:0 -> device: XLA_CPU device
/job:localhost/replica:0/task:0/device:XLA_GPU:0 -> device: XLA_GPU device
/job:localhost/replica:0/task:0/device:GPU:0 -> device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1
2020-04-13 22:44:59.530773: I tensorflow/core/common_runtime/direct_session.cc:359] Device mapping:
/job:localhost/replica:0/task:0/device:XLA_CPU:0 -> device: XLA_CPU device
/job:localhost/replica:0/task:0/device:XLA_GPU:0 -> device: XLA_GPU device
/job:localhost/replica:0/task:0/device:GPU:0 -> device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1
Publicado 28 artículos originales · ganado elogios 2 · Vistas 3259

Supongo que te gusta

Origin blog.csdn.net/Maestro_T/article/details/105500425
Recomendado
Clasificación