簡體   English   中英

無法在Windows 10上導入GPU的Tensorflow

[英]Cannot import Tensorflow for GPU on Windows 10

試圖在我的機器上安裝Tensorflow的gpu版本,但是在嘗試'import tensorflow'時我遇到了這個錯誤


ImportError Traceback(最近一次調用最后一次)C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_tensorflo w_internal.py in swig_import_helper()17 try:---> 18 return importlib.import_module(mname) 19除了ImportError:

C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib__init __。py in import_module(name,pac kage)125 level + = 1 - > 126 return _bootstrap._gcd_import(name [level:],package,level)127

_gcd_import中的C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib_bootstrap.py(名稱,pac kage,級別)

_find_and_load中的C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib_bootstrap.py(name,import_)

_find_and_load_unlock ed(name,import_)中的C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib_bootstrap.py

_load_unlocked(spec)中的C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib_bootstrap.py

module_from_spec(spec)中的C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib_bootstrap.py

create_modul中的C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib_bootstrap_external.py(self,spec)

_call_with_frames_rem oved中的C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib_bootstrap.py(f,* args,** kwds)

ImportError:DLL加載失敗:找不到指定的模塊。

在處理上述異常期間,發生了另一個異常:

ImportError Traceback(最近一次調用最后一次)C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_tensorflo w.py in()40 sys.setdlopenflags(_default_dlopen_flags | ctypes.RTLD_GLOBAL)---> 41 from tensorflow.python.pywrap_tensorflow_internal import * 42 from tensorflow.python.pywrap_tensorflow_internal import version

C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_tensorflo w_internal.py in()20返回importlib.import_module('_ pywrap_tensorflow_internal')---> 21 _pywrap_tensorflow_internal = swig_import_helper()22 del swig_import_helper

swig_import_helper()中的C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_tensorflo w_internal.py除了ImportError:---> 20返回importlib.import_module('_ pywrap_tensorflow_internal')21 _pywrap_tensorflow_internal = swig_import_helper( )

C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib__init __。py in import_module(name,pac kage)125 level + = 1 - > 126 return _bootstrap._gcd_import(name [level:],package,level)127

ImportError:沒有名為'_pywrap_tensorflow_internal'的模塊

在處理上述異常期間,發生了另一個異常:

在()----> 1 import tensorflow中的ImportError Traceback(最近一次調用last)

C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow__init __。py in()22 23 #pylint:disable = wildcard-import ---> 24 from tensorflow.python import * 25 #pylint:enable = wildcard-進口26

C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python__init __。py in <module>()49 import numpy as np 50 ---> 51 from tensorflow.python import pywrap_tensorflow 52 53#Protocol buffers

出於某些常見原因和解決方案,C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_tensorflo w.py in()50。 在請求幫助時,請在整個堆棧跟蹤51上面包含此錯誤消息。“”“%traceback.format_exc()---> 52引發ImportError(msg)53 54 #pylint:enable = wildcard-import,g-import-not -at-top,unused-import,line-too-long

ImportError:Traceback(最近一次調用最后一次):文件“C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_t ensorflow_internal.py”,第18行,在swig_import_helper中返回importlib.import_module(mname)文件“C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib__init __。py”,第126行,在import_module中返回_bootstrap._gcd_import(name [level:],package,level)文件“”,第986行,在_gcd_import文件中“” ,第969行,在_find_and_load文件“”,第958行,在_find_and_load_unlocked文件“”,第666行,在_load_unlocked中
在module_from_spec中的文件“”,第577行
文件“”,第906行,在create_module文件“”,第222行,在_call_with_frames_removed中導入錯誤:DLL加載失敗:找不到指定的模塊。

在處理上述異常期間,發生了另一個異常:

回溯(最近一次調用最后一次):文件“C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_t ensorflow.py”,第41行,來自tensorflow.python.pywrap_tensorflow_internal import * File“C :\\ _用戶\\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_t ensorflow_internal.py“,第21行,在_pywrap_tensorflow_internal = swig_import_helper()文件”C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ site-packages \\ tensorflow \\ python \\ pywrap_t ensorflow_internal.py“,第20行,在swig_import_helper中返回importlib.import_module('_ pywrap_tensorflow_internal')文件”C:\\ Users \\ snh5_000 \\ Anaconda3 \\ lib \\ importlib__init __。py“,第126行,在import_module中返回_bootstrap ._gcd_import(name [level:],package,level)ImportError:沒有名為'_pywrap_tensorflow_internal'的模塊

無法加載本機TensorFlow運行時。

請參閱https://www.tensorflow.org/install/install_sources#common_installation_probl ems

出於一些常見原因和解決方案。 在尋求幫助時,請在此錯誤消息上方包括整個堆棧跟蹤。

運行Windows 10,Python 3.5.2,Anaconda 4.2.0 64位。 使用'pip install tensorflow-gpu'安裝tensorflow-gpu。

我嘗試了https://github.com/tensorflow/tensorflow/issues/5949中的修復,即運行Microsoft Visual C ++ 2015 Redistributable Update 3並確認我在System32 / SysWOW64 /我的Python文件夾中有以下DLL:

KERNEL32.dll中

WSOCK32.DLL

WS2_32.DLL

SHLWAPI.DLL

python35.dll

MSVCP140.dll

VCRUNTIME140.dll

API-MS-雙贏CRT-運行時l1-1-0.dll

API-MS-雙贏CRT堆,l1-1-0.dll

API-MS-雙贏的CRT型多功能l1-1-0.dll

API-MS-雙贏CRT的標准輸入輸出,l1-1-0.dll

API-MS-雙贏CRT-串l1-1-0.dll

API-MS-雙贏CRT-數學l1-1-0.dll

API-MS-雙贏CRT的轉換,l1-1-0.dll

API-MS-雙贏CRT-環境l1-1-0.dll

API-MS-雙贏CRT-文件系統l1-1-0.dll

API-MS-雙贏CRT-時間l1-1-0.dll

值得注意的是Tensorflow的cpu版本導入並運行得很好,但是當我嘗試使用gpu版本時,我得到了上述錯誤。 我認為這是由於我在配置CUDA工具包/ cudNN方面的錯誤,但我認為我正確地完成了說明中列出的所有內容。 我確保在CUDA工具包的PATH環境變量中有一個條目(通向\\ bin和\\ libnvvp)並為cudNN添加了一個條目(導致\\ cuda)。

您需要提供哪些想法或其他信息?

嘗試在C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v8.0\\bin cudnn64_6.dll cudnn64_5.dll重命名為cudnn64_5.dll

你需要讓CUDA_HOME導致你的PATH附加\\cuda%CUDA_HOME%\\bin 此外,目前的tensorflow僅支持cudNN 5.1,請確保你擁有它。

你試過把它關掉再打開嗎? 但是說真的。 如果在CUDA和cuDNN安裝期間運行命令行終端,則在關閉並重新打開終端之前,環境變量不會刷新。 我知道這很簡單,但在一次簡單的重啟解決了相同的導入錯誤之前,我掙扎了一個小時。

我在運行Windows 10,Anaconda 4.3.21 64位,Python 3.5.3和TensorFlow 1.2.0時遇到了同樣的問題。
但是,通過安裝cuDNN v5.1而不是v6.0修復了此問題,如此處所建議的https://stackoverflow.com/a/43566341/3830240

安裝cuDNN 5.1后仍然出現_pywrap_tensorflow_internal錯誤(是的,我已正確設置了PATH)。 我從這個網站安裝tensorflow_gpu好運。 這需要cuDNN 6.0,而不是5.1。 不幸的是,他們目前只有Tensorflow 1.1用於GPU系統。

我在這里嘗試了所有解決方案,但這對我不起作用。 檢查此鏈接是否符合要求,並確保您具有兼容版本。 我還將所有cuDNN路徑添加到我的環境變量中,也不要忘記將libbininclude的內容復制到CUDA安裝中的相同文件夾中。

這對我有用。 我提到了Tensorflow網站,找到了目前支持的CudaNN版本。 當我解決了我的問題時,它是CudaNN 6.x. 最新版本,在我的情況下7個DLL沒有被tensorflow加載,如果你嘗試重命名它,它會導致內存錯誤。

應該注意的是,從版本1.0到版本1.2, Tensorflow需要Cuda8和cudnnv5.1 因此您需要安裝cudnn5.5。
這個問題在April 24 2017April 24 2017被問到,這意味着OP正在嘗試安裝1.1.0版本(當時,最新版本),當時需要cudnn5.5和python3.5。 所以他需要有cudnn5來解決他/她的問題。

但是,如果您嘗試安裝最新版本的Tensorflow ,即大於1.3.0,則需要cudnnv6.0 +。
如果您在1.3.0上收到此錯誤,則表示您需要cudnnv6.0。 把它放到你的PATH ,你會沒事的。

它對我來說不適用於嘗試更改dll文件版本。 經過幾周的tensorflow-gpu導入錯誤后,我終於想通了我需要將各自的目錄(CUDA,cuDNN和CUPTI)與我的%PATH%環境變量相匹配。 我正在使用CUDA 9.0,cuDNN v7.0和Tensorflow 1.11。

C:\> SET PATH=C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v9.0\bin;%PATH% 

C:\> SET PATH=C:\Program Files\NVIDIA GPU
Computing Toolkit\CUDA\v9.0\extras\CUPTI\libx64;%PATH% 

C:\> SET PATH=C:\tools\cuda\bin;%PATH%

https://www.tensorflow.org/install/gpu

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM