El problema fue la biblioteca cuDNN para mí, por la razón que sea, cudnn-8.0-windows10-x64-v6.0 NO estaba funcionando, usé cudnn-8.0-windows10-x64-v5.1 - ¡TODO BIEN!
Mi configuración funciona con Win10 64 y Nvidia GTX780M:
- Asegúrese de tener lib MSVCP140.DLL verificando su sistema / ruta; si no, consígalo aquí
- Ejecute el instalador de Windows para python 3.5.3-amd64 desde aquí - NO pruebe versiones más nuevas ya que probablemente no funcionarán
- Obtenga cuDNN v5.1 para CUDA 8.0 desde aquí : colóquelo en la carpeta de usuarios o en otra ubicación conocida (lo necesitará en su ruta)
- Obtenga CUDA 8.0 x86_64 desde aquí
- Establezca PATH vars como se esperaba para apuntar a las bibliotecas cuDNN y python (la ruta de Python debe agregarse durante la instalación de Python)
- Asegúrese de que ".DLL" esté incluido en su variable PATHEXT
- Si está usando tensorflow 1.3, entonces desea usar cudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705
Si ejecuta Windows 32, asegúrese de obtener las versiones de 32 bits de los archivos mencionados anteriormente.
En mi caso, el archivo "cudnn64_6.dll" en la carpeta / bin tuvo que ser renombrado a "cudnn64_5.dll" para que el error desapareciera. Pasé fácilmente dos horas para resolver esto, y seguí la guía de instalación oficial al pie de la letra. Esto es cierto para la instalación a través de pip (con soporte oficial) y conda (con soporte de la comunidad).
fuente
cudnn64_6.dll
no lo serácudnn64_5.dll
.cudnn64_7.dll
a helpcudnn64_6.dll
.Cualquiera de los errores indica que su sistema no se ha instalado
MSVCP140.DLL
, lo que requiere TensorFlow.Para corregir este error:
MSVCP140.DLL
está en tu%PATH%
variable.MSVCP140.DLL
no está en su%PATH%
, instale Visual C ++ 2015 redistribuible (versión x64), que contiene esta DLL.fuente
Solo para tensorflow con CPU:
Había instalado tensorflow usando el comando:
Esto instaló
tensorflow 1.7
pero no pudo importar el tensorflow desde adentro
python 3.6.5 amd64
usando:import tensorflow as tf
Por lo tanto, cambié la versión de tensorflow
1.7
a1.5
usando los siguientes comandos:pip3 install tensorflow==1.5
Esto desinstaló la versión anterior y la instaló
1.5
. Ahora funciona.Parece que mi CPU no admite el conjunto de instrucciones AVX que se necesita en
tensorflow 1.7
Tenía
MSVCP140.DLL
en las carpetas del sistema y .DLL en la variable PATHEXT en Variable de entorno.fuente
Tengo Win7 Pro de 64 bits en la cpu AMD, sin gpu. Estaba siguiendo las instrucciones en "Instalación con pip nativo" en https://www.tensorflow.org/install/install_windows . El paso de instalación salió bien, pero el intento de importar tensorflow produjo lo infame:
ImportError: No module named '_pywrap_tensorflow_internal'
Esta parece ser una de esas situaciones en las que muchas cosas no relacionadas pueden salir mal, dependiendo de la configuración, que caen en cascada hacia el mismo error.
En mi caso, instalar MSVCP140.DLL fue la respuesta.
Ya tienes
MSVCP140.DLL
siC:\Windows\System32\MSVCP140.DLL
, YC:\Windows\SysWOW64\MSVCP140.DLL
.Lo instalé manualmente, lo cual era innecesario (el redistribuible no es todo el lío de desarrollo de Visual C ++ y no es grande). Utilice el enlace publicado anteriormente en este hilo para instalarlo: Visual C ++ 2015 redistribuible .
Además, le recomiendo que anule el directorio de instalación predeterminado para Python y lo coloque en cualquier lugar que no sea debajo
C:\Program Files
, porque Windows intenta proteger los archivos contra escritura allí, lo que causa problemas más adelante.fuente
TensorFlow
requiereMSVCP140.DLL
, que puede no estar instalado en su sistema. Para solucionarlo abre la terminal y escribe o pega este enlace:C:\> pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0-cp35-cp35m-win_amd64.whl
Tenga en cuenta que esto es para instalar la versión solo para CPU de TensorFlow.
fuente
cuDNN causa mi problema. La variable PATH no funciona para mí. Tengo que copiar los archivos de mis carpetas cuDNN en una estructura de carpetas respetuosa con CUDA 8.0.
fuente
Para aquellos que utilizan hardware antiguo:
Es posible que obtenga este mismo error debido a que tiene una CPU más antigua con tensorflow-gpu 1.6.
Si su cpu se fabricó antes de 2011, entonces su versión máxima de tensorflow-gpu es 1.5.
Tensorflow 1.6 requiere instrucciones AVX en su cpu. Verificado aquí: documentos de Tensorflow Github
CPU habilitadas para AVX: CPU AVX Wiki
Lo que hice en mi entorno conda para tensorflow:
pip install --ignore-installed --upgrade tensorflow-gpu==1.5
fuente
El problema para mí fue la biblioteca cuDNN que no cumplía con los requisitos de la tarjeta gráfica. Descargué la versión 6.0 pero para mi GTX980ti, pero la capacidad de cálculo recomendada en el sitio web de nvidia era 5.1 ( http://developer.nvidia.com/cuda-gpus ), así que descargué 5.1 y reemplacé la versión 6.0 y tan pronto como ' He hecho que empezó a funcionar.
fuente
Después de mucho ensayo y error, y asegurándose de que VC ++ 2015 Redistributable , cuDNN DLL y todas las demás dependencias sean accesibles desde PATH, parece que Tensorflow GPU solo funciona con Python
3.5.2
(al momento de escribir este artículo)Entonces, si estás usando
Anaconda
conda create -n tensorflow-gpu python=3.5.2
activate tensorflow-gpu
pip install tensorflow-gpu
Luego abra el intérprete de Python y verifique
>>> import tensorflow as tf >>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
Créditos: esta cuidada guía
fuente
Para cada versión de Tensorflow, requiere una versión diferente de CuDnn. ¡En www.tensorflow.org , no mencionaron eso en la guía de instalación!
Mi caso usa tensorflow versión 1.3 que usa cuDNN 6. https://github.com/tensorflow/tensorflow/releases .
Compruebe su versión de tensorfow y la versión cuDNN si coinciden.
Y configure el entorno de ruta para cuDNN, si aún no funciona, verifique la respuesta de @ Chris Han .
fuente
Publiqué un enfoque general para solucionar el problema "Error en la carga de DLL" en esta publicación en sistemas Windows. Para referencia:
fuente
All files (*.*)
junto al nombre del archivo en lugar de soloexe files (*.exe, *.dll)
.Uno puede tener la tentación de mantener abierto Powershell / cmd en Windows. Pasé un tiempo razonable hasta que decidí cerrar y volver a abrir mi Powershell solo para darme cuenta de que había hecho todo bien.
fuente
En caso de que esté intentando instalar la GPU tensorflow en Windows, puede encontrar este sencillo e interesante tutorial.
Nota: Si está utilizando PyCharm, por ejemplo, debe cambiar el intérprete al entorno de conda creado.
fuente
Dll no encontrado. Instale Visual C ++ 2015 redistribuible para corregir.
fuente
El problema fue la biblioteca cuDNN para mí. Pude ejecutar el código de prueba después de agregar el directorio (posiblemente la carpeta bin) de la DLL cuDNN (no el archivo LIB) en la RUTA de Windows.
Como referencia, instalé TensorFlow desde la fuente usando PIP y mi sistema operativo: Windows 7 e IDE: Visual Studio 2015.
fuente
Con la versión 1.3.0 de TensorFlow, debe usar Cudnn 6.0 en lugar de Cudnn 5.0, ya que Cudnn 5.0 está dando este error. No olvide agregar la variable de ruta a Cudnn 6.0. Con cudnn64_6.dll, su Tensorflow funcionará bien. Lea el enlace a continuación. https://github.com/tensorflow/tensorflow/blob/master/RELEASE.md#release-130
fuente
Mis dos centavos:
Tuve un montón de problemas al intentar instalar correctamente mi CUDA 8.0 en Windows 7. Tenía una versión anterior instalada y quería actualizarla, así que la desinstalé e intenté instalar CUDA 8.0 (para tensorflow 1.3). La instalación falló cada vez, intenté degradar a CUDA 7.5 y pude instalarlo, pero tuve muchos problemas con tensorflow (similar al problema PATH que se describe aquí). En pocas palabras: lo que funcionó para mí fue:
1) Desinstale TODOS los componentes de NVIDIA (excepto el controlador de gráficos de pantalla)
2) Descargue el kit de herramientas CUDA 8.0 (y el parche) https://developer.nvidia.com/cuda-downloads
3) Compruebe CheckSum MD5 (utilicé MS https://www.microsoft.com/en-ca/download/confirmation.aspx?id=11533 pero cualquiera serviría) para asegurarse de que estuvieran bien (sucedió varias veces que el instalador no se descargó correctamente porque aparentemente mi enrutador WiFi).
4) Ejecute el instalador del kit de herramientas CUDA como root
5) descargue cudnn 8.0 v6 y agregue su ubicación a la variable PATH https://developer.nvidia.com/rdp/cudnn-download
Espero que ayude y ahorre algunos dolores de cabeza ...
NOTA: ¡Este script me ayudó mucho a depurar el problema! (Gracias, señor) https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c
fuente
Intentaré dar la solución que funcionó para mí. Parece que diferentes conjuntos de problemas pueden conducir a esta situación.
El software de 32 bits funciona en sistemas operativos de 64 bits. Instalé anaconda-3 (32 bits) en mi sistema operativo de 64 bits. Funcionaba perfectamente bien. Decidí instalar tensorflow en mi máquina y no se instalaría al principio. Estaba usando el entorno conda para instalar tensorflow y obtuve este error.
La solución es si tiene un sistema operativo de 64 bits, instale anaconda de 64 bits y si tiene un sistema operativo de 32 bits, entonces anaconda de 32 bits . Luego, siga el procedimiento estándar mencionado en el sitio web de tensorflow para Windows (instalación de anaconda). Esto hizo posible instalar tensorflow sin ningún problema.
fuente
mi respuesta es solo para usuarios de Windows 10, ya que probé lo siguiente en Windows 10. Extendiendo algunas de las respuestas anteriores, sugiero esto: si está usando anaconda, puede evitar todo y simplemente instalar anaconda-navigator usando el comando
Luego, puede iniciar el navegador desde el símbolo del sistema usando el comando
Al ejecutar este comando, obtiene una interfaz gráfica de usuario simple en la que puede crear un entorno virtual, crear el entorno con python = 3.5.2 e instalar el módulo tensorflow-gpu o tensorflow buscando el módulo en el cuadro de búsqueda usando la interfaz gráfica de usuario, también se encargará de instalar los archivos cuda correctos para usted. Usar el navegador anaconda es la solución más simple.
Si no está usando anaconda, tenga cuidado con lo siguiente
tensorflow-gpu 1.3 requiere python 3.5.2, cuda development kit 8.0 y cudaDNN 6.0, por lo tanto, al instalar, asegúrese de ejecutar el comando
pip install tensorflow-gpu==1.3
tensorflow-gpu 1.2.1 o menos requiere python 3.5.2, cuda development kit 8.0 y cudaDNN 5.1, por lo tanto, al instalar, asegúrese de ejecutar el comando
pip install tensorflow-gpu==1.2.1
A continuación se muestran los pasos que debe seguir para los dos procesos anteriores Configuración de las variables de ruta Debe tener las siguientes variables del sistema
CUDA_HOME = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0" CUDA_PATH = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0" CUDA_PATH_V8.0 = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"
Tu PATHTEXT debe incluir ".DLL" junto con otras extensiones
".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.DLL"
También agregue lo siguiente a su ruta
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\CUPTI\libx64; C:\Windows\SysWOW64; C:\Windows\System32
Si recibe errores, puede descargar el siguiente código ejecutado por mrry, este código verificará su configuración y le dirá si algo está mal https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c
Referencias: http://blog.nitishmutha.com/tensorflow/2017/01/22/TensorFlow-with-gpu-for-windows.html
La referencia anterior es muy útil. Comente las mejoras a esta respuesta. Espero que esto ayude, gracias.
fuente
tensorflow 1.3 todavía no es compatible con cuda 9.0 . Me degrado a cuda 8.0 , luego funciona.
fuente
Para las personas que encuentran esta publicación en 2019, este error también podría ocurrir porque la versión 3.7 de Python no es compatible con TensorFlow (consulte https://www.tensorflow.org/install/pip ). Entonces, verifique la versión de Python:
En caso de que sea mayor que 3.6, debería rebajarse a 3.6. Para Anaconda:
conda install python=3.6
Luego, instale TensorFlow.
Por cierto, no tenía la versión de GPU, por lo que no hubo problemas relacionados con CUDA en mi caso.
fuente
Me encontré con el mismo problema ( en el 09/09/2019 ) mientras investigaba [SO]: Error durante el entrenamiento con la API de estimador en tensorflow .
Preparar:
Error :
Mirando el módulo "defectuoso" (gracias a Dependency Walker ), resulta que no es él mismo lo que falta, sino algunas de sus dependencias (los archivos cu * _ 100 .dll ).
Verifique [SO]: Python Ctypes - cargar dll arroja OSError: [WinError 193]% 1 no es una aplicación Win32 válida (la respuesta de @ CristiFati) (la sección de Conclusiones al final) para obtener más detalles sobre este tipo de errores.
Tenía una versión anterior de CUDA Toolkit ( 8 ) y, como consecuencia, el cu * _ 80 .dll archivos .
Actualizar a TensorFlow-GPU 1. 14 .0 (
"e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -m pip install --upgrade tensorflow-gpu
), hizo que el error fuera un poco más claro (y también más corto):Pasos :
Después de los pasos anteriores, y también estableciendo las rutas correctas, funcionó:
fuente