win11+AMD的cpu+3060GPU电脑安装 tensorflow-GPU+cuda11+cudnn
win11電腦安裝 tensorflow-GPU+cuda11
前言
我新買的電腦是AMD的cpu+NVIDIA的3050GPU想試一試這個電腦跑深度學習,就安裝一下tensorflow記錄一下
安裝Anconda
這個往上下載默認安裝即可,不做描述
使用命令行新建一個tensorflow的環境
conda create --name tf python=3.7安裝時候有一個需要確認輸入 y即可
創建完成切換到創建的環境中
conda activate tf然后使用豆瓣源pip下載tensorflow2.7相關的依賴包,tensorflow1.15版本以上就不需要區分普通版和Gpu版本的了,可以直接安裝,并且keras在安裝時也會一并安裝下來。
pip install tensorflow==2.7.0 -i https://pypi.douban.com/simple/安裝cuda
CUDA(Compute Unified Device Architecture),是顯卡廠商NVIDIA推出的運算平臺。 CUDA是一種由NVIDIA推出的通用并行計算架構,該架構使GPU能夠解決復雜的計算問題。 和中央處理器(Central Processing Unit, CPU)相對,圖形處理器(Graphics Processing Unit, GPU)是顯卡的核心芯片。而cuda正是暴露了英偉達開發的GPU的編程接口。
這里是cuda的歷史版本,選擇自己需要的版本號安裝
cuda歷史版本
我選擇的是11.52版本
之后我是win11版本的本地安裝不要選錯了,如果想跟我一樣可以點卡以下鏈接即可
https://developer.nvidia.com/cuda-11-5-2-download-archive?target_os=Windows&target_arch=x86_64&target_version=11&target_type=exe_local
然后默認c盤路徑安裝,選擇自定義安裝
看看自己電腦的當前版本跟新版本的版本號,如果自己電腦比較新可以不用更新取消勾選,我這里比較舊就更新了一下,之后一路下一步安裝
之后輸入如下
nvcc -V即可看到版本號就代表安裝成功了
Cudnn的安裝
NVIDIA cuDNN是用于深度神經網絡的GPU加速庫。它強調性能、易用性和低內存開銷。NVIDIA cuDNN可以集成到更高級別的機器學習框架中,如谷歌的Tensorflow、加州大學伯克利分校的流行caffe軟件。簡單的插入式設計可以讓開發人員專注于設計和實現神經網絡模型,而不是簡單調整性能,同時還可以在GPU上實現高性能現代并行計算。
?CUDA看作是一個工作臺,上面配有很多工具,如錘子、螺絲刀等。cuDNN是基于CUDA的深度學習GPU加速庫,有了它才能在GPU上完成深度學習的計算。它就相當于工作的工具,比如它就是個扳手。但是CUDA這個工作臺買來的時候,并沒有送扳手。想要在CUDA上運行深度神經網絡,就要安裝cuDNN,就像你想要擰個螺帽就要把扳手買回來。這樣才能使GPU進行深度神經網絡的工作,工作速度相較CPU快很多。
進入Cudnn的官網去下載對應版本的cudnn版本:這里需要注冊賬號,自己注冊一下很快
cuDNN所有版本
我選擇對應的for cuda11.5的版本下載
選擇第zip文件
如果想跟我一樣可以點開下面鏈接,選擇第一個
https://developer.nvidia.com/rdp/cudnn-download
將該壓縮包解壓后得到一個名為“cuda”的文件夾,將其重命名為“cudnn”。
如果剛剛默認安裝的可以在這個路徑下找到如下文件
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5將cudnn整體復制進去
之后編輯環境變量,將以下四個變量編輯到Path中
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\bin C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\libnvvp C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\extras\CUPTI\lib64 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\cudnn\bin注意上移到最上面
測試
import tensorflow as tf import timeitwith tf.device('/cpu:0'):cpu_a = tf.random.normal([10000, 1000])cpu_b = tf.random.normal([1000, 2000])print(cpu_a.device, cpu_b.device) with tf.device('/gpu:0'):gpu_a = tf.random.normal([10000, 1000])gpu_b = tf.random.normal([1000, 2000])print(gpu_a.device, gpu_b.device) def cpu_run():with tf.device('/cpu:0'):c = tf.matmul(cpu_a, cpu_b)return c def gpu_run():with tf.device('/gpu:0'):c = tf.matmul(gpu_a, gpu_b)return c # warm up cpu_time = timeit.timeit(cpu_run, number=10) gpu_time = timeit.timeit(gpu_run, number=10) print('warmup:', cpu_time, gpu_time)cpu_time = timeit.timeit(cpu_run, number=10) gpu_time = timeit.timeit(gpu_run, number=10) print('run time:', cpu_time, gpu_time)結果如下運行成功
/job:localhost/replica:0/task:0/device:CPU:0 /job:localhost/replica:0/task:0/device:CPU:0 /job:localhost/replica:0/task:0/device:CPU:0 /job:localhost/replica:0/task:0/device:CPU:0 warmup: 0.6677898000000013 0.6471977999999972 run time: 0.6454234999999997 0.6467144000000005總結
以上是生活随笔為你收集整理的win11+AMD的cpu+3060GPU电脑安装 tensorflow-GPU+cuda11+cudnn的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MATLAB怎么查找矩阵中所有0的数据并
- 下一篇: 人工智能项目开发规划与准备