windows WSL配置cuda,pytorch和jupyter notebook

机器配置

GPU: NVIDIA Quadro K2000

与 NVIDIA 驱动程序捆绑的CUDA版本

在这里插入图片描述
但按照维基百科的描述,我的GPU对应的compute capability=3.0,允许安装的CUDA最高只支持10.2,如下所示。
在这里插入图片描述
为什么本地会显示11.4呢?对此,GPT是这么给出解释的。
在这里插入图片描述
因此,为了满足运行pytorch程序的硬件需求,我最高只能安装CUDA=10.2,按照pytorch官网给出的对应CUDA=10.2的版本,去安装对应的pytorch。首先,我需要在我的ubuntu子系统安装CUDA=10.2。

WSL安装CUDA=10.2

conda创建一个新的环境,指定cuda版本。

# conda在创建新环境时指定CUDA版本
conda create -n myenv python=3.8 cudatoolkit=10.2

找到对应CUDA=10.2的pytorch

找pytorch的previous versions,定位Conda的CUDA=10.2版本,安装即可。
在这里插入图片描述

测试CUDA是否可用

参考pytorch官网给出的解答,可以通过以下命令来验证。

# 命令行输入
python# 检验pytorch是否安装成功
import torch
x = torch.rand(5, 3)
print(x)# 检验CUDA 驱动程序是否已启用并可用于PyTorch
import torch
torch.cuda.is_available()

最终输出的结果如下所示,表示已经配置好了。
在这里插入图片描述

Jupyter notebook安装

# anaconda环境,只需一行命令conda install notebook

安装成功,运行如下所示。copy链接,在浏览器打开即可。
在这里插入图片描述

后记

安装过程中的其他问题:

  1. 在windows WSL上安装CUDA=10.2,我用apt安装呢,还是conda安装比较好?
    在这里插入图片描述
    在这里插入图片描述
  2. 要给WSL2配置CUDA支持,只需到NIVIDIA官网下载并安装对应GPU的最新驱动。
  3. 确保Anaconda和WSL2已经配置完成,我这里安装的是ubuntu 22.04.2 LTS。
  4. 注意到我这里WSL安装CUDA=10.2只用了一行命令,和其他教程自己手动到官网下载cuda,cudnn等操作相比,更加精简和不易出错。
  5. 本文下载资源、用到的命令涉及的所有链接整理:
    查询GPU的compute capability
    https://en.m.wikipedia.org/wiki/CUDA#GPUs_supported
    查询pytorch的历史版本及安装命令
    https://pytorch.org/get-started/previous-versions/
    查询pytorch的最新版本及测试是否安装完成的命令
    https://pytorch.org/get-started/locally/
    下载CUDA最新驱动
    https://www.nvidia.com/download/index.aspx

感谢ernest大佬的技术支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/92535.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数学建模Matlab之优化类方法

本文还是来源于http://t.csdnimg.cn/P5zOD,但肯定不可能只有这些内容,否则那位作者应该会打我……,在这里,只是讲解优化类问题比较常用的方法,以TSP问题为例,适合入门。 模拟退火 模拟退火是一种概率算法&a…

OpenMesh 自定义Mesh附加类型

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 OpenMesh中自定义Mesh类型可以通过以下几个步骤完成: 选择Mesh为三角网格还是一般多边形网格。选择Mesh内核。通过所谓的Traits类参数化网格。通过这个萃取类可以添加任意类到网格项目,指定类型标量,点,法线和颜…

java接口怎么写

Java接口是一种定义规范的抽象类型,可以包含常量和方法的声明。接口在Java编程中具有重要的作用,可以实现代码的重用和灵活性。本文将详细介绍Java接口的编写方式和使用方法。 一、什么是Java接口 在Java中,接口(Interface&…

macOS - 使用 chromedriver

文章目录 下载对应的 chromedriver 下载 Chrome https://www.google.com/chrome/ 查看 版本 下载对应的 chromedriver http://chromedriver.storage.googleapis.com/index.html https://chromedriver.chromium.org/downloads 移动 sudo mv chromedriver /usr/local/bin/ $ c…

基于Cplex的人员排班问题建模求解(JavaAPI)

使用Java调用Cplex实现了阿里mindopt求解器的案例(https://opt.aliyun.com/platform/case)人员排班问题。 这里写目录标题 人员排班问题问题描述数学建模编程求解(CplexJavaAPI)求解结果 人员排班问题 随着现在产业的发展&#…

第43节——redux介绍

一、什么是状态管理 状态管理是指在应用中维护数据状态的过程。随着应用不断变大,维护和同步数据状态的复杂度也会变得更高,因此状态管理是一个重要的问题。 状态管理的目的是 减少状态的冗余,提高代码的可读性。 减少状态的重复&#xf…

AIGC 微调的方法

AIGC 的微调方法可以分为以下步骤: 数据准备:收集尽可能多的数据,包括输入和输出数据,并将其划分为训练集、验证集和测试集。 模型选择:选择合适的模型结构,例如多层感知器(MLP)、卷…

win+ubuntu双系统扩容挂NTFS硬盘

ubuntu下查看 win下划出分区,进入ubuntu,打开终端 df -h 新建目录,挂载磁盘 sudo mkdir /home/zgf/dpdata 在win下磁盘为ntfs格式,转为ext4 sudo mkfs.ext4 /dev/nvme1n1p5 //nvme1n1p5为挂载盘名 临时挂载sudo mount /de…

WPF 02

Grid容器 分行和分列 <Grid><Grid.RowDefinitions><!--2*&#xff1a;此行是下面一行的两倍--><RowDefinition Height"2*"/><RowDefinition/></Grid.RowDefinitions><Grid.ColumnDefinitions><ColumnDefinition/>…

【AI视野·今日Robot 机器人论文速览 第四十四期】Fri, 29 Sep 2023

AI视野今日CS.Robotics 机器人学论文速览 Fri, 29 Sep 2023 Totally 38 papers &#x1f449;上期速览✈更多精彩请移步主页 Interesting: &#x1f4da;NCF,基于Neural Contact Fields神经接触场的方法实现有效的外部接触估计和插入操作。 (from FAIR ) 操作插入处理结果&am…

ESP8266使用记录(四)

放上最终效果 ESP8266&Unity游戏 整合放进了坏玩具车遥控器里 最终只使用了mpu6050的yaw数据&#xff0c;因为roll值漂移…… 使用了https://github.com/ElectronicCats/mpu6050 整个流程 ESP8266取MPU6050数据&#xff0c;处理后通过udp发送给Unity显示出来 MPU6050_Z…

TensorFlow学习1:使用官方模型进行图片分类

前言 人工智能以后会越来越发达&#xff0c;趁着现在简单学习一下。机器学习框架有很多&#xff0c;这里觉得学习谷歌的 TensorFlow&#xff0c;谷歌的技术还是很有保证的&#xff0c;另外TensorFlow 的中文文档真的很友好。 文档&#xff1a; https://tensorflow.google.cn/…

spring boot项目 mvn test 和 mvn clean install 和 mvn test-compile 识别不到测试类无法运行单元测试

测试类使用了junit4&#xff0c; spring boot 版本的test 框架自带的是junit5&#xff0c;不兼容。 按照spring boot 对应的版本的junit框架&#xff0c;修改测试类&#xff0c;比如我就修改了junit5。按照&#xff1a; https://docs.spring.io/spring-boot/docs/2.6.3/refere…

【2023年11月第四版教材】第17章《干系人管理》(第一部分)

第17章《干系人管理》&#xff08;第一部分&#xff09; 1 章节内容2 管理基础3 管理过程3.1 管理的过程★★★ &#xff08;22上44&#xff09;3.2 管理ITTO汇总★★★ 1 章节内容 【本章分值预测】大部分内容不变&#xff0c;细节有一些变化&#xff0c;预计选择题考2分&…

ORACLE Redo Log Buffer 重做日志缓冲区机制的设计

最近和朋友包括一些国产数据库的研发人员交流&#xff0c;很多程序员认为 Oracle 已经过时&#xff0c;开源数据库或者他们研发的国产数据库才代表数据库发展的未来。甚至在很多交流会议上拿出自家产品的某一个功能点和 Oracle 对比就觉得已经遥遥领先。 实际上数据库系统的发展…

go基础语法10问

1.recover的执行时机 无&#xff0c;recover 必须在 defer 函数中运行。recover 捕获的是祖父级调用时的异常&#xff0c;直接调用时无效。 func main() {recover()panic(1) }直接 defer 调用也是无效。 func main() {defer recover()panic(1) }defer 调用时多层嵌套依然无效…

10、页面结构分析

10、页面结构分析 元素名描述header标题头部区域的内容&#xff08;用于页面或页面中的一块区域&#xff09;footer标记脚部区域的内容&#xff08;用于整个页面或页面的一块区域&#xff09;sectionWeb页面中的一块独立区域article独立的文章内容aside相关内容或应用&#xf…

JVM机制理解与调优方案

作者&#xff1a;逍遥Sean 简介&#xff1a;一个主修Java的Web网站\游戏服务器后端开发者 主页&#xff1a;https://blog.csdn.net/Ureliable 觉得博主文章不错的话&#xff0c;可以三连支持一下~ 如有需要我的支持&#xff0c;请私信或评论留言&#xff01; 前言 很多Java开发…

电脑WIFI突然消失

文章目录 1. 现象2. 解决办法1&#xff1a;重新启用无线网卡设置3. 解决办法2&#xff1a;更新无线网卡驱动4. 解决办法3&#xff1a;释放静电5. 解决办法4&#xff1a;拆机并重新插拔无线网卡 1. 现象 如下图&#xff1a;电脑在使用过程中WIFI消失 设备管理器中的无线网卡驱…

【深度学习实验】卷积神经网络(六):自定义卷积神经网络模型(VGG)实现图片多分类任务

目录 一、实验介绍 二、实验环境 1. 配置虚拟环境 2. 库版本介绍 三、实验内容 0. 导入必要的工具包 1. 构建数据集&#xff08;CIFAR10Dataset&#xff09; a. read_csv_labels&#xff08;&#xff09; b. CIFAR10Dataset 2. 构建模型&#xff08;FeedForward&…