WSL2中安装Cuda和Pytorch

参考资料:来自公孙启的文章《Windows11 + WSL Ubuntu + Pycharm + Conda for deeplearning》以及对应的视频【深度学习:wsl ubuntu安装cuda和cudnn】

教程很完整没有什么坑,该文仅作记录。

注意事项

网络问题

安装过程中可能会遇到下载速度很慢的问题,需要挂代理。因为用的是WSL,可以选择主机(即正在使用的windwos系统)开代理,wsl连接主机的代理端口。

给出一个现成的脚本如下:

sh
#!/bin/bash

# 查找主机的IP地址
host_ip=$(cat /etc/resolv.conf |grep "nameserver" |cut -f 2 -d " ")

# 设置代理,其中7890修改为主机设置的代理服务器端口,
export ALL_PROXY="http://$host_ip:7890"
export http_proxy="http://$host_ip:7890"
export https_proxy="http://$host_ip:7890"

将这个脚本放在 /etc/profile.d/ 目录下,就会在启动时自动设置代理。

设置代理后还要注意一下防火墙,设置完代理后可能网络直接卡住,这个时候可以ping一下主机,如果 WSL2 虚拟机无法 ping 通主机,但是可以 ping 通百度,说明是宿主机的防火墙没有设置 WSL 入站规则。可以登录管理员账号执行:

powershell
New-NetFirewallRule -DisplayName "WSL" -Direction Inbound  -InterfaceAlias "vEthernet (WSL)"  -Action Allow

WSL内存问题

WSl比正常使用linux更加耗内存,而且疑似存在内存泄漏,建议用一段时间后重启一下。

加入遇到内存不够无法编译的情况,少开几个线程,或者设置wsl的swap分区大小,参考微软WSL文档

新建文件 C:\Users\<UserName>\.wslconfig,写入

[wsl2]
swap = 80GB
swapfile=C:\\temp\\wsl-swap.vhdx
memory = 16GB

具体大小视情况修改。

比较相位差法和Capon算法在1发2收雷达系统下的差别
GNU-Radio中ZMQ模块的Pass-Tags