Python中Tensorflow無法調(diào)用GPU問題的解決方法
當(dāng)用以下代碼查看GPU數(shù)量時(shí),gpus返回的是一個(gè)空列表,說明tensorflow沒有找到GPU。
import tensorflow as tf # 查看gpu和cpu的數(shù)量 gpus = tf.config.experimental.list_physical_devices(device_type='GPU') cpus = tf.config.experimental.list_physical_devices(device_type='CPU')
是由于tensorflow版本從2.x開始不再區(qū)分CPU版和GPU版,
官網(wǎng)中說明Tensorflow 2.10是最后一個(gè)在本地windows上支持GPU的版本。
所以要在native-windows上使用GPU,就只能安裝2.10.0版本及以下的版本,或者安裝老版的tensorflow-gpu。
解決步驟:
所有現(xiàn)在我們要做的就是:要使用python2.10版本的Tensorflow去調(diào)用GPU
但是你如果想使用2.10版本的Tensorflow,你必須下載相應(yīng)適配的CUDA
WIN+r 輸入cmd 用Python -V查看你的python版本
Python -V 或 python --version
查出來:

接下來就是要把TensorFlow的版本降下來,在PyCharm里面的終端運(yùn)行下面代碼
pip install tensorflow==2.10.0
WIN+R并輸入CMD打開命令提示符,輸入nvidia-smi查看驅(qū)動(dòng)支持的最高CUDA版本,以本人驅(qū)動(dòng)為例,適用的最高CUDA版本為12.1
nvidia-smi

下一步是徹底刪除舊的CUDA和cuDNN
先刪除含CUDA的程序
在搜索欄輸入控制面板---->打開控制面板
點(diǎn)擊 程序和功能
卸載所有與CUDA有關(guān)的程序

檢查刪除環(huán)境變量
打開 此電腦---->系統(tǒng)屬性---->高級(jí)系統(tǒng)設(shè)置---->環(huán)境變量
找到環(huán)境變量和系統(tǒng)變量的path,點(diǎn)擊編輯,若發(fā)現(xiàn)path中沒有含CUDA的環(huán)境變量,證明剛剛第一步卸載CUDA的時(shí)候系統(tǒng)已經(jīng)自動(dòng)刪除,若系統(tǒng)沒有自動(dòng)刪除(path中仍然含有C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0這樣含有CUDA的路徑),則需要手動(dòng)刪除。

檢查刪除文件夾
找到NVIDIA GPU Computing Toolkit文件夾,刪除該文件夾即可,因?yàn)榘惭bCUDA時(shí)默認(rèn)的安裝路徑就是這個(gè)文件,又因?yàn)閏uDNN是專門為深度學(xué)習(xí)設(shè)計(jì)的GPU加速庫,通常是安裝在CUDA的目錄下的,所以把這個(gè)文件刪了,也就把CUDA和cuDNN刪除干凈了!

完成以上三大步驟,CUDA和cuDNN就卸載完成啦!
接下來就是要重新安裝合適版本的CUDA(CUDA11.2)下載地址


驗(yàn)證CUDA是否安裝完成
在新打開的cmd窗口中輸入:
nvcc -V

同樣下載匹配的cuDNN,這里選擇8.9.7適用于CUDA 11.X的版本:鏈接地址

解壓出cuDNN文件后
復(fù)制以下三個(gè)文件夾

將文件夾粘貼至如下路徑:
path to your cudaFolder/Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6

驗(yàn)證cuDNN是否安裝成功
①在下述文件夾右鍵,打開終端
path to your cudaFolder/Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/extras/demo_suite
②輸入:
.\deviceQuery.exe

得到PASS即代表安裝成功
輸入:
.\bandwidthTest.exe

得到PASS即代表安裝成功
然后就是給CUDA配置環(huán)境變量
此電腦——屬性——高級(jí)系統(tǒng)設(shè)置——環(huán)境變量——系統(tǒng)變量 ,在系統(tǒng)變量中找到path,去里面加另外兩條,前兩條應(yīng)該本來就有,把后兩條加上,最終有四條路徑見截圖

在python中pip安裝tensorflow-cpu
pip install tensorflow-cpu==2.10
pip install tensorflow-cpu==2.10
如果曾經(jīng)安裝過,其他兩種,可以先執(zhí)行卸載。
pip uninstall tensorflow
pip uninstall tensorflow-gpu安裝plugin
pip install tensorflow-directml-plugin
如果此時(shí)出現(xiàn)
ERROR: Could not find a version that satisfies the requirement tensorflow-directml-plugin (from versions: none)
ERROR: No matching distribution found for tensorflow-directml-plugin
那一定是前面的環(huán)境沒有配置好,重新弄吧。
弄好后重啟電腦
安裝下面的倆個(gè)
conda install cudatoolkit=11.1 conda install "tensorflow<2.11"
然后在python運(yùn)行以下代碼:
import tensorflow as tf
# 檢查 TensorFlow 是否看到 GPU
print("TensorFlow version:", tf.__version__)
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
# 打印出可用 GPU 的詳細(xì)信息
if tf.config.list_physical_devices('GPU'):
for gpu in tf.config.list_physical_devices('GPU'):
print("Name:", gpu.name, " Type:", gpu.device_type)得到

以上就是Python中Tensorflow無法調(diào)用GPU問題的解決方法的詳細(xì)內(nèi)容,更多關(guān)于Python Tensorflow無法調(diào)用GPU的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python中的pydot庫實(shí)現(xiàn)復(fù)雜圖形使用教程
pydot是一個(gè)用于生成和操作DOT圖文件的Python庫,封裝了Graphviz的功能,適用于可視化圖結(jié)構(gòu),它可以生成依賴圖、流程圖、樹形圖等,并支持復(fù)雜的圖形樣式、網(wǎng)絡(luò)數(shù)據(jù)集成、循環(huán)圖、輸出其他格式、處理大規(guī)模圖數(shù)據(jù)的等等2025-01-01
使用matplotlib實(shí)現(xiàn)在同一個(gè)窗口繪制多個(gè)圖形
這篇文章主要介紹了使用matplotlib實(shí)現(xiàn)在同一個(gè)窗口繪制多個(gè)圖形問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
Visual?Studio?Code配置Anaconda詳細(xì)圖文教程
在Visual?Studio?Code中使用Anaconda環(huán)境進(jìn)行Python開發(fā),可以充分利用Anaconda提供的包管理和虛擬環(huán)境功能,同時(shí)享受VS?Code提供的強(qiáng)大開發(fā)工具和調(diào)試功能,這篇文章主要介紹了Visual?Studio?Code配置Anaconda的相關(guān)資料,需要的朋友可以參考下2025-12-12
Python利用第三方模塊實(shí)現(xiàn)壓縮css文件
在?Python?中可以使用多種方法來壓縮?CSS?文件。其中一種流行的方法是使用?csscompressor?庫,這個(gè)庫可以幫助你壓縮?CSS?代碼,下文就來和大家詳細(xì)聊聊2023-01-01
pytorch + visdom CNN處理自建圖片數(shù)據(jù)集的方法
這篇文章主要介紹了pytorch + visdom CNN處理自建圖片數(shù)據(jù)集的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-06-06
Python 實(shí)現(xiàn)還原已撤回的微信消息
這篇文章主要介紹了Python 神操作,還原已撤回的微信消息功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06

