1,先在windows上安装最细nvidia驱动
2,而后安装wsl
3,而后进入wsl 执行下面的命令

sudo apt-get remove nvidia*
sudo apt-get remove cuda*
sudo apt-get remove docker*

4,此时你可以测一下windows是不是能驱动wsl 在wsl中执行nvidia-smi
5,安装cuda在wsl中 可以参考如下代码

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-wsl-ubuntu-11-4-local/7fa2af80.pub
sudo apt-get update
apt-get install -y cuda-toolkit-11-4


echo 'export PATH=/usr/local/cuda-11.4/bin:$PATH'>>~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH'>>~/.bashrc
source ~/.bashrc

总之你执行nvidia-smi
之后cuda 安装成功了nvcc -V也成功了
那么重启不好用就检测一下 版本,系统的版本可以高于pytorch 需求版本 如果满足 ,你就多找几个版本的cuda环境变量添加教程一顿添加加重启,就可能成功
还有这样添加环境变量

$sudo vim /etc/profile

在文件末尾添加:

export PATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda-8.0/lib64

保存并退出,输入命令$source /etc/profile使其生效。

我的~/.bashrc

export PATH=/usr/local/cuda-11.4/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH$LD_LIBRARY_PATH$PATH$PATH
export CUDA_HOME=/usr/local/cuda-11.4$PAT

建议使用vscode pycharm 链接wsl
这样就方便调试代码
上面的都过了的话
下面这句话是在win 上执行的

docker run --gpus all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark    

下面是踩坑代码
坑的主要原因就是么有说明什么地方安装什么
明确一点就是 win 上安装显卡驱动 (可装cuda等不影响wsl)
但是wsl上只能安装cuda cudnn 必须清除掉 nvidia 驱动

https://zhuanlan.zhihu.com/p/149848405
这里有可能遇到
ubuntu更新源报错Certificate verification failed: The certificate is NOT trusted.

这里解决

https://blog.csdn.net/qlexcel/article/details/120642914
https://www.cnblogs.com/legendjslc/p/12667967.html

这个是安装和配置的教程
https://docs.docker.com/desktop/windows/wsl/
可能会发现win 没有hyper-v
这个网址可以解决
https://www.liulanqi.com/15633.html
就是将下面代码复制到一个.cmd 结尾的任意文件中以管理的身份运行即可

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐