python - Error de libcublas.so.8.0 con tensorflow
ubuntu (6)
Actualmente estoy intentando ejecutar un proyecto desde GitHub: https://github.com/nilboy/pixel-recursive-super-resolution
Después de instalar ubuntu en la VM, instalé python con tensorflow 2.7 usando el comando pip.
Cuando intento ejecutar la sesión de entrenamiento con python, aparece este error:
ImportError: libcublas.so.8.0: no se puede abrir el archivo de objeto compartido: no existe tal archivo o directorio
No pude encontrar nada exactamente igual, solo este error: ImportError: libcudart.so.8.0: no puedo abrir el archivo de objeto compartido
Estoy usando Yoga 13, así que no tengo una GPU NVIDIA y estoy tratando de ejecutar este proyecto en la CPU. ¿Puedes ayudar a identificar el problema tensorflow?
Debe instalar Cuda 8.0 y configurar el entorno de la siguiente manera:
export PATH="$PATH:/usr/local/cuda-8.0/bin"
export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64"
En mi computadora tuve:
cudnn5.1,
cuda8.0
Al importar tensorflow, tuve el mismo error ImportError:
libcublas.so.8.0: no se puede abrir el archivo de objeto compartido: no existe tal archivo o directorio
e incluso
libcublas.so.9.0: no se puede abrir el archivo de objeto compartido: no existe tal archivo o directorio
Para solucionar este problema, instalé tensorflow 1.4
lugar de 1.6 e hice lo que Umair Qadir sugirió.
Pero luego tuve otro problema:
libcudnn.so.6: no se puede abrir el archivo de objeto compartido: no existe tal archivo o directorio
Esto se debió a que tenía cudnn5.1 según lo requerido, pero en realidad necesita cudnn6
Estos son los pasos para desinstalar cudnn5.1 e instalar cudnn6:
1- Desinstalar cudnn 5.1 rm -f /usr/include/cudnn.h rm -f / usr / lib / x86_64-linux-gnu / libcudnn rm -f / usr / local / cuda- / lib64 / libcudnn
2- Instalar cudnn6
Después de suscribirse a nvdia, vaya a aquí https://developer.nvidia.com/rdp/cudnn-download y descargue cudnn6 para cuda8 y luego vaya a la carpeta donde descargó el cudnn y haga:
$ tar xvzf cudnn-8.0-linux-x64-v5.1-ga.tgz
$ sudo cp -P cuda/include/cudnn.h /usr/local/cuda/include
$ sudo cp -P cuda/lib64/libcudnn /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h
/usr/local/cuda/lib64/libcudnn*
Ahora deberías tener tensorflow
Pruébalo escribiendo en la consola:
$python
import tensorflow
Si desea trabajar en anaconda y el error persiste, intente:
$jupyter notebook --generate-config
luego puede encontrar el nombre del directorio donde tiene su archivo de configuración (lo llamaré
) y abra /jupyter_notebook_config.py y agregue en la parte superior:
import os
c = get_config()
os.environ[''LD_LIBRARY_PATH''] = ''/usr/local/cuda-8.0/lib64:usr/local/cuda-8.0/lib64/libcudart.so.8.0''
c.Spawner.env.update(''LD_LIBRARY_PATH'')
Ahora debería funcionar ...
Aquí están los sitios web que me ayudaron:
https://askubuntu.com/questions/952075/how-to-upgrade-tensorflow-to-v1-3-cudnn-cuda-upgrade https://developer.nvidia.com/rdp/cudnn-download https://medium.com/@ikekramer/installing-cuda-8-0-and-cudnn-5-1-on-ubuntu-16-04-6b9f284f6e77 tensorflow gpu no se puede llamar desde jupyterhub / jupyter notebook, ¿por qué?
Puede estar preinstalado tensorflow-gpu, por lo que
pip3 instalar tensorflow --también instalado
ya que esto me ayudó desde
Puede ser un problema con la versión de CUDA instalada. tratar
$ sudo apt-get install cuda-8-0
Recibí el mismo error al ejecutar Tensorflow con soporte GPU en Python y lo resolví así:
$ export PATH="$PATH:/usr/local/cuda-8.0/bin"
$ export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64"
Para habilitar a todos los usuarios, es posible que tenga que ingresar estas declaraciones de exportación en etc / environment en Ubuntu
En mi opinión, los pasos difíciles están instalando los controladores Nvidia y Cuda-8. Si sigues las instrucciones vas a tener un mal momento. En lugar de instalarlo a través de apt
:
sudo apt-get install nvidia-384 #can type nvidia then hit "tab" to view all available options
sudo apt-get install cuda-8-0
Si eso no funciona ... buena suerte. Puedes probar esto:
Comprueba que no tienes cuda-9: ls /usr/local
Reiniciar
Ejecute export LD_LIBRARY_PATH=/usr/local/cuda-8.0/extras/CUPTI/lib64:$LD_LIBRARY_PATH
pero reemplace /usr/local/cuda-8.0/extras/CUPTI/lib64
con la salida relevante de echo $LD_LIBRARY_PATH
Compruebe que funcionó nvcc --version
imprime la versión CUDA