Win10笔记本用雷电3接口外接显卡加速tensorflow深度学习步骤

简介:最近入手了一块rtx3060,但自己的主力设备是笔记本,于是萌生了通过外接显卡来加速深度学习的想法,配置过程中遇到一些小问题,经过调试最后解决了,现在简单把整个过程涉及的要点提炼出来,希望能帮助到有相同需求的人。

笔记本设备:Dell Precision 7540

操作系统:Windows 10 专业工作站版 20H2 19042.985

显卡拓展坞:雷蛇(Razer)战核 Core X 幻彩版

外接显卡:Nvidia Geforce Rtx 3060 Ultra W OC 12G L


注意事项:显卡几乎都是通过pcie协议挂载到电脑上的,所以外接显卡需要直接或间接连接到电脑的pcie总线才能被电脑识别,雷电3走的是pcie通道,这就是为什么支持雷电3的type-c接口可以被拿来外接显卡。也就是说,用雷蛇拓展坞外接显卡成功与否要看笔记本有没有雷电3或以上接口。如果没有雷电3,也可以自己DIY一个拓展槽,再通过转接线连接到电脑支持pcie的端口。比如,常见的DIY方案会选择连接无线网卡用的那个端口,不过无线网卡拔下来就需要另外接一个usb无线网卡来维持上网功能了。另外如果笔记本拓展性强,有多的m.2硬盘拓展口也可以使用,不过总归笔记本拆机容易遇到各种各样的麻烦,这里不展开说了。


具体步骤

1.硬件连接

把显卡插入显卡坞并上螺丝固定,连接好显卡供电线和显卡坞电源线,显卡的输出接口接到外接显示屏,确保接线无误后可给显卡坞上电,雷电3先不要连接电脑。
注:显卡坞和电脑保持物理连接的情况下不要重启电脑,有可能发生蓝屏。遇到蓝屏了也不要慌,拔掉雷电3连接线,然后再重启就行。

2.安装显卡驱动

2.1 情形一:对于只有intel核心显卡的笔记本,直接到英伟达官网下载rtx3060的驱动安装就行。
2.2 情形二:对于带Nvidia独立显卡的笔记本,装驱动要考虑笔记本的独立显卡和外接显卡驱动的兼容问题。以我的笔记本为例,内置独立显卡是Nvidia Quadro的专业图形卡,配置显卡驱动需要进行的操作如下:
2.1.1 到nvidia官网(NVIDIA 驱动程序下载)下载外接显卡rtx3060的驱动,驱动类型选studio(SD);
Win10笔记本用雷电3接口外接显卡加速tensorflow深度学习步骤_第1张图片
2.1.2 断开网络连接,此电脑右键点管理,点击设备管理器,点击显示适配器,先右键禁用独立显卡,然后右键卸载独立显卡(要先断开网络,不然独立显卡联网就会自动安装驱动);
2.1.3 在桌面打开此电脑:计算机->卸载或更改软件程序->程序和功能,把电脑上原来的独立显卡的所有相关nvidia驱动删掉;
2.1.4 电脑上原来的驱动删完后,此时,把显卡坞的雷电3端口与笔记本的雷电3端口接上;
2.1.5 安装第一步下载好的驱动;
2.1.6 驱动装好之后独立显卡和外接显卡都能正常工作,此时可以重新连接网络。
Win10笔记本用雷电3接口外接显卡加速tensorflow深度学习步骤_第2张图片
2.1.7 FurMark烤机测试

注:现在geforce的studio类型的驱动也支持quadro,但是某些绘图建模专业软件的优化可能没专用驱动那么好,这个自行斟酌吧,不用外接显卡的时候又装回quadro图形卡的专用驱动也行。 

3.配置支持RTX30系显卡的Tensorflow深度学习框架

3.1 版本组合:python3.8.12+Tensorflow2.6.1+cuda11.4.2+cudnn11.4

小细节:显卡能适配什么版本的tensorflow,主要取决于cuda的支持,据网上相关经验帖,cuda11.1以上的版本开始支持30系显卡的深度学习运算加速,但是3070/3080/3090是2020年9月发布的,cuda11.1未必支持更晚发布的3060。这么说可能有点抽象,直接看tensorflow官网的支持列表(tensorflow稳定版及cuda/cudnn支持对应列表):
Win10笔记本用雷电3接口外接显卡加速tensorflow深度学习步骤_第3张图片这个列表能知道版本间的对应关系,但是跟显卡之间的关联还需要结合发布日期考虑,3060显卡是2021年1月发布的,也就是说至少在这个时间之后发布的cuda才能支持3060显卡,所以到cuda的发布网站(cuda-toolkit发布网站)查看一下各版本的发布日期,如下:
Win10笔记本用雷电3接口外接显卡加速tensorflow深度学习步骤_第4张图片
所以从发布时间看,保险一点cuda选择2021年6月发布的11.4或以上版本,这个时间点适配应该是做好了,cudnn的话按照图中选择8.1以上的版本就行,也就是python3.8.12+Tensorflow2.6.1+cuda11.4.2+cudnn11.4的组合可以适配Rtx3060了。

3.2 配置步骤

3.2.1 下载并安装cuda11.4.2(cuda-toolkit 11.4.2)
3.2.2 下载cudnn解压并复制到cuda的安装目录,cuda的目录添加到系统环境路径(cudnn下载)
3.2.3 下载并安装Anaconda(anaconda官方下载)
3.2.4 安装python3.8

# 基于anaconda创建python3.8虚拟环境
conda create -n py38 python=3.8
# 激活python3.8环境
activate py38
# 关闭环境
deactivate

3.2.5 安装tensorflow

# 进入python3.8环境
activate py38
# 安装tensorflow及相关包
pip install numpy pandas matplotlib sklearn tensorflow -i https://pypi.doubanio.com/simple
# 关闭环境
deactivate

3.2.6 安装并配置jupyter notebook

# 进入环境
activate py38
# 安装ipykernel
conda install ipykernel
# 把上一步安装的ipykernel写入anaconda的base环境中jupyter的内核
python -m ipykernel install --user --name 环境名称 --display-name "自定义一个环境名称"
# 环境名称就是当前虚拟环境的名称,即py38,自定义一个环境名称:是显示在jupyter notebook界面的内核的名字,自己起一个就行
# 退出环境
deactivate

3.3 测试配置环境是否成功

配置好之后,进入虚拟环境打开jupyter,自己用一个神经网络脚本跑一下看看gpu能不能正常启动运行即可。测试情况:

3.1.1 任务管理器
Win10笔记本用雷电3接口外接显卡加速tensorflow深度学习步骤_第5张图片

 3.2.2 训练时间
Win10笔记本用雷电3接口外接显卡加速tensorflow深度学习步骤_第6张图片

 运行深度学习发现外接gpu可以正常工作,至此,外接显卡加速tensorflow环境搭建完成。

4.相关经验参考

[1]Windows 10,RTX 3070安装Tensorflow及 CUDA
[2]RTX3060深度学习tensorflow环境配置之踩坑记录
[3]【踩坑教程】win10环境下RTX3050Ti安装Tensorflow-gpu2.5+CUDA11.2.1+cudnn8.1.0
[4]Jupyter Notebook 中添加 conda 虚拟环境
[5]环境篇:Anaconda安装Python

你可能感兴趣的:(tensorflow,tensorflow,深度学习,python)