写bug的程旭源

V1

2023/03/29阅读:302主题:雁栖湖

Windows RTX4090深度学习配置,并Mac远程登录

本文主要内容:

  • 硬件参考(哪里省钱,哪里不要省)
  • Win10+RTX4090深度学习环境配置
  • Mac远程联机Windows(ssh、APP)

这两天买了一张RTX4090的显卡,就在以前的主机上安装和配置了一下,把过程记录下来,有需要的人可以参考一下,先上一个成品图:

Part1硬件

主机是2020年买的,可以根据需要买更高配的。 本次要更换的就是红框中的三个,显卡、内存、电源,其他的都还能用。

1硬件该怎么选?

这个我朋友也给了我很多的参考建议,包括各个硬件都换一遍如何选,也参考了知乎@良睦路程序员[1]的回答。

为了不花冤枉钱还能达到目标,我就换了这三个

想换4090 24G显卡,电源肯定要跟上(换成了1000w以上),内存原来16G也是短板,这次换成32G的。机箱能放得下显卡(长度要注意)

这里也收集了一些显卡的参数对比,仅供参考。 涡轮卡一些参数: 公版卡参数(难买到):

2如何买?

显卡毕竟很贵,最担心是买到矿卡,我朋友建议的品牌:影驰、技嘉、微星,不着急可以等活动省大几百块。

不要去二手店、组装店之类的,很可能会买到二手卡。

同一品牌下的同一款卡,还会配不同套装,比如水冷、RGB灯之类的,根据自己喜好和预算选一个即可。

Part2深度学习环境配置

我们拆机组装好后【如果不知道如何装机,自行搜视频看哈】,就开始安装一些软件了。

  • 如何看显卡安装成功?

设备管理器中可以查看:

3显卡驱动安装:

要在Windows上使用4090做模型训练,一方面要下载显卡驱动[2]https://www.nvidia.cn/geforce/drivers/,另外要训练神经网络我们要安装CUDAtoolkit和cuDNN。

如图: 根据自己的系统和显卡型号搜索一下即可。

经验告诉我不要使用最新的版本,dddd(懂的都懂)。4090显卡需要“驱动程序版本: 526.98 - 发行日期: 2022-11-16”及以上

下载后,根据推荐一路点下去安装。不用管界面显示哪个路径,那个是临时的,最终会自动删除,并最终安装在默认路径:

C盘的 NVIDIA Corporation
C盘的 NVIDIA GPU Computing Toolkit

这时候,可以打开终端(win + R 快捷键),输入cmd,终端输入 nvidia-smi 查看:

这里哪怕是12.x版本也没事,我们可以使用conda管理我们的项目环境,只需要那里的cudatoolkit和cudnn版本一致即可。原因下文有解释。

4cudatoolkit和cudnn 安装

也可以单独再下载 11.8版本的cudatoolkit[3]和对应的cuDNN[4]https://developer.nvidia.com/cuda-toolkit-archive

https://developer.nvidia.com/rdp/cudnn-download

一路点击安装即可。

cuDNN的下载需要注册,挺麻烦,11.8版本的我上传到网盘了,文末可以获取连接哈。

下载后解压,对应目录的文件,复制到刚刚安装cuda toolkit同名文件夹下即可。

  • 在终端输入 nvcc -V

如果没有正常显示,可以查看系统环境变量:

**win+i快捷键** 打开配置,
依次点击"系统""关于""高级系统设置"就能打开系统属性,
在“高级”下点击“环境变量N”,
在系统变量中找到path并双击。 

以下如果没有就添加:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\libnvvp
  • nvcc版本和nvidia-smi 版本不一致: 虽然nvcc 是11.8版本,nvidia-smi显示的是12版本,并不冲突,因为:

nvcc 属于CUDA的编译器,将程序编译成可执行的二进制文件,nvidia-smi 全称是 NVIDIA System Management Interface ,是一种命令行工具,帮助管理和监控NVIDIA GPU设备的。

nvcc是与CUDA Toolkit一起安装的CUDA compiler-driver tool,它只知道自身构建时的CUDA runtime版本,并不知道安装了什么版本的GPU driver。

5conda环境管理

Python项目环境依赖的版本让人很不好搞,对于不同cuda版本依赖,我们可以使用conda创建新环境,并安装对应的版本。 之前也写了一篇conda环境管理的文章。

conda install  -c conda-forge cudatoolkit=11.8
conda install -c conda-forge cudnn

conda会自动给匹配合适的对应版本。

哪怕本机部署Docker镜像,根据版本拉取hub中的镜像即可,例如:

docker pull pytorch/pytorch:1.13.1-cuda11.6-cudnn8-runtime

Part3Mac 远程连接

Mac上可以远程ssh登录Win电脑,也可以使用相关软件,我用的Microsoft Remote Desktop,国内的APP store可能不可以下载,我这里放在了网盘,见文末。

这样,主机打开,不需要额外显示器,而且可以Mac OS 和Windows系统无缝切换。

1、安装 openssh 可以通过系统设置安装:

https://learn.microsoft.com/zh-cn/windows-server/administration/openssh/openssh_install_firstuse?source=recommendations

也可以通过powerShell安装。

Windows系统左下角的系统按钮,右键找到“命令提示符(管理员)”,全程需要管理员权限的哦。

# 安装OpenSSH客户端
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
 
#安装OpenSSH服务端
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

验证是否安装成功: 输入

Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

返回installed状态即可:

2、启动SSH服务器

# 启动sshd服务
Start-Service sshd
 
# 将sshd服务设置为自动启动,若不设置需要在每次重启后重新开启sshd
Set-Service -Name sshd -StartupType 'Automatic'
 
# 确认防火墙规则,一般在安装时会配置好
Get-NetFirewallRule -Name *ssh*
 
# 若安装时未添加防火墙规则"OpenSSH-Server-In-TCP",则通过以下命令添加
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

3、开启密钥登录

ssh-keygen -t ed25519

如果走默认就一直回车,也可以自己定义路径和文件名,默认在: C:\Users\你的用户名.ssh\id_ed25519 对应的还有个公钥 id_ed25519.pub

我的这里加了个后缀,和其他文件区分开来。

我们将公钥.pub文件复制放到Mac系统下 .ssh文件下

  • SSH登录:

在Windows电脑的命令行中输入 ipconfig 查看 ipv4地址 在Mac终端输入:

ssh win用户名@刚刚查看的ip地址

在终端操作需要熟悉Windows中的一些命令。

  • APP登录: Microsoft Remote Desktop

软件和本次的驱动、cuda我都上传到网盘了。从网盘下载安装即可。

登录界面:

配置也简单: 在“add user account”中添加Windows主机的登录账密,保存下次就直接点击链接了。

6其他连接方式:

如开头显示,我用了投影仪显示主机内容,一个投影仪和一个显示器也差不多的价格,但投影仪联网还能看视频看电影(家庭影院),屏幕和电视都是固定大小的屏幕。

一根HDMI线,一头连接投影仪,一头连接显卡上的HDMI口就可以了,投影界面的设置中,将信号源切换为HDMI即可。

END

本次分享就到这里了,Windows环境下基于RTX4090显卡安装深度学习环境的基本流程,Mac远程连接Windows主机、投影仪连接主机的相关图文教程。

所有文件的百度云盘链接: https://pan.baidu.com/s/17dqV0vD-Il3zxmKZDk4zcg?pwd=zcrn

需要的自取哈~

参考资料

[1]

知乎@良睦路程序员: https://www.zhihu.com/question/586361676/answer/2913703371

[2]

显卡驱动: https://www.nvidia.cn/geforce/drivers/

[3]

cudatoolkit: https://developer.nvidia.com/cuda-toolkit-archive

[4]

cuDNN: https://developer.nvidia.com/rdp/cudnn-download

分类:

人工智能

标签:

深度学习

作者介绍

写bug的程旭源
V1

公众号ID: torchnlp