WSL2和CUDA踩坑
 
WSL2里可以直接跑cuda了, 目前(2020年10月) 功能可用, 但bug很多, 不够完善
 
 
1. 安装
    主要参考: https://docs.nvidia.com/cuda/wsl-user-guide/index.html
    
    注意:
        1. 目前需要加入windows体验计划, 并选dev通道, 更新到开发版的windows
        2. 开启hyper-v/wsl/虚拟化平台等windows的功能并安好wsl, 可能需要wsl --update更新内核
        3. 只要在windows上安装这一个驱动就可以了 https://developer.nvidia.com/cuda/wsl/download 在WSL2里是不需要安驱动的.
   4. 在wsl里安cuda的话是用: cuda-toolkit-11-1 
Do not choose the cuda, cuda-11-0, or cuda-drivers meta-packages under WSL 2 since these packages will result in an attempt to install the Linux NVIDIA driver under WSL 2.
 
2. 常见问题
 
    1. DNS有问题
        在/etc/resolv.conf 里加自已的dns可暂时解决
        永久解决要新建/etc/wsl.conf文件内容如下:
    [network]
    generateResolvConf = false
   删掉 原来的 /etc/resolv.conf (这是个链接) 换成好用的dns设置
 
    2. 太占C盘空间
        最简单的移动方法, 找到wsl2的ext4.vhdx文件在哪:  
        一般在类似这种地方:  C:\Users\xxx\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState
        把ext4.vhdx移到其它盘, 再作一个SymbolLink就可以了 New-Item -ItemType SymbolicLink -Path . -Name ext4.vhdx -Target $newLocation
 
    3. wsl读写速度慢
        和wsl1不同现在的/mnt/下的碰盘访问走的是网络, 在读写大量小文件时慢的怀疑人生. 尽量用本地的盘吧
 
    4. wsl扩容
        wsl2默认只有256G的大小, 可以直接用hyper-v中的磁盘工具给ext4.vhdx扩容. 再到wsl里重新给/划空间
           sudo resize2fs /dev/sdb <sizeInMegabytes>G
 
    5. wsl2和代理工具Proxifer互相冲突 [ 参考的对象类型不支持尝试的操作 The attempted operation is not supported for the type of object referenced ].
 

问题:
参考的对象类型不支持尝试的操作。(The attempted operation is not supported for the type of object referenced.)
解决方法:

1. 临时解决方案(不推荐):
以管理员身份运行CMD,输入:

netsh winsock reset (不过这样Proxifer就废了)

重启计算机即可修复。

2. 比较长期解决的方案(推荐):
(使用到目前,仍未出现问题)

(1)下载此软件:
www.proxifier.com/tmp/Test20200228/NoLsp.exe

(因需要梯子访问下载,有些朋友不方便,所以我上传到百度云分享在这里:)
(链接:https://pan.baidu.com/s/1bVZ0OXZPxEt8l1IHYaFK3A ,提取码:vjge)

(2)管理员身份运行CMD输入:
NoLsp.exe C:\windows\system32\wsl.exe
1
请自行注意NoLsp.exe程序的位置,以及你的wsl.exe位置。
产生原因和解决方法分析:
代理软件和wsl2的sock端口冲突,使用netsh winsock reset重置修复。
Proxifer开发人员解释如下:

如果Winsock LSP DLL被加载到其进程中,则wsl.exe将显示此错误。最简单的解决方案是对wsl.exe使 用WSCSetApplicationCategory
WinAPI调用来防止这种情况。在后台,该调用在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock2\Parameters\AppId_Catalog中为wsl.exe创建一个条目。
这将告诉Windows不要将LSP DLL加载到wsl.exe进程中

 
 
 

WSL2和CUDA踩坑的更多相关文章

  1. Ubuntu16.04编译安装tensorflow,2018最新血泪踩坑之后的全面总结!绝对成功!【转】

    本文转载自:https://blog.csdn.net/pzh11001/article/details/79683133 大家好,我是 (深度学习硬件DIY总群)(719577294)群主:    ...

  2. Pytorch及Yolov5环境配置及踩坑

    Pytorch及Yolov5环境配置及踩坑 1.何为Yolov5 yolo是计算机视觉方面用来进行目标检测的一个十分出名的开源框架,我搜不到官方的对此概括性的定义,但实际上也没什么必要,更重要的是会使 ...

  3. Spark踩坑记——Spark Streaming+Kafka

    [TOC] 前言 在WeTest舆情项目中,需要对每天千万级的游戏评论信息进行词频统计,在生产者一端,我们将数据按照每天的拉取时间存入了Kafka当中,而在消费者一端,我们利用了spark strea ...

  4. Spark踩坑记——数据库(Hbase+Mysql)

    [TOC] 前言 在使用Spark Streaming的过程中对于计算产生结果的进行持久化时,我们往往需要操作数据库,去统计或者改变一些值.最近一个实时消费者处理任务,在使用spark streami ...

  5. 【踩坑速记】二次依赖?android studio编译运行各种踩坑解决方案,杜绝弯路,总有你想要的~

    这篇博客,只是把自己在开发中经常遇到的打包编译问题以及解决方案给大家稍微分享一下,不求吸睛,但求有用. 1.大家都知道我们常常会遇到dex超出方法数的问题,所以很多人都会采用android.suppo ...

  6. NPOI导出Excel (C#) 踩坑 之--The maximum column width for an individual cell is 255 charaters

    /******************************************************************* * 版权所有: * 类 名 称:ExcelHelper * 作 ...

  7. 我的微信小程序入门踩坑之旅

    前言 更好的阅读体验请:我的微信小程序入门踩坑之旅 小程序出来也有一段日子了,刚出来时也留意了一下.不过赶上生病,加上公司里也有别的事,主要是自己犯懒,就一直没做.这星期一,赶紧趁着这股热乎劲,也不是 ...

  8. router路由去掉#!的踩坑记

    项目中在研究去掉router#!的过程中的踩坑过程.

  9. vue+ vue-router + webpack 踩坑之旅

    说是踩坑之旅 其实是最近在思考一些问题 然后想实现方案的时候,就慢慢的查到这些方案   老司机可以忽略下面的内容了 1)起因  考虑到数据分离的问题  因为server是express搭的   自然少 ...

随机推荐

  1. 10月1日之后,你新建的GitHub库默认分支不叫「master」了

    从 2020 年 10 月 1 日开始,GitHub 上的所有新库都将用中性词「main」命名,取代原来的「master」,因为后者是一个容易让人联想到奴隶制的术语. 这个决定并不是最近才做出的.今年 ...

  2. Java Web学习(七)HttpServletResponse(客户端响应)

    一.定义 HttpServletResponse对象代表服务端的响应,通过这个对象提供的方法,可以向客户机输出数据. 二.常用方法 在JavaWeb开发中,只要是写URL地址,那么建议最好以" ...

  3. java经典算法40题-附带解决代码

    前一段时间工作比较闲,每天没有代码敲的日子有点无聊,于是为了保证自己的编程逻辑力的日常清醒,故百度了一些经典的java算法,然后自己思考编程解决问题,虽然那些东西比较基础了,但是有些题目小编看到了也是 ...

  4. Excel文件内容无法显示解决方案

    问题描述: 双击打开一个excel文件,内容无显示,只能通过"打开"选项,选择文件,才能正常显示. 解决方法一: 1.[win+R]打开快速访问,输入"regedit&q ...

  5. C++实现职工管理系统(上)

    C++实现职工管理系统(上) 大家好呀,时间过得真快,在博客园已经第七天了,博主今天给大家带来的是职工管理系统(C++)(上) 这次的随笔记录的是实现职工管理系统所需要的类 目录 C++实现职工管理系 ...

  6. mongodb安装教程(亲测有效)

    网上太多教程了,都是说的不明不白,所以自己整理一份 #参考官网: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat ...

  7. 重拾H5小游戏之入门篇(二)

    上一篇,水了近千字,很酸爽,同时表达了"重拾"一项旧本领并不容易,还有点题之效果.其实压缩起来就一句话:经过了一番记忆搜索,以及try..catch的尝试后,终于选定了Phaser ...

  8. Python导入模块的几种方法

    Python 模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python 代 ...

  9. np.random.multivariate_normal方法浅析

    从多元正态分布中抽取随机样本. 多元正态分布,多正态分布或高斯分布是一维正态分布向更高维度的推广.这种分布由其均值和协方差矩阵来确定.这些参数类似于一维正态分布的平均值(平均值或"中心&qu ...

  10. OpenCV中threshold函数的使用

    转自:https://blog.csdn.net/u012566751/article/details/77046445 一篇很好的介绍threshold文章: 图像的二值化就是将图像上的像素点的灰度 ...