WSL下Ubuntu+RTX4090安装CUDA+cuDnn+Pytorch

安装驱动

首先需要明确的是,在WSL下安装Ubuntu,如果要使用主机的GPU卡,只需要在主机Windows上安装驱动,Linux中不需要安装驱动,可以在Linux中使用nvidia-smi命令查看驱动版本。

安装CUDA

避坑注意事项:如果要使用pytorch,建议最高安装CUDA11.8,因为CUDA版本再往上当前没有配套的pytorch版本。

CUDA下载地址:https://developer.nvidia.com/cuda-toolkit-archive

安装WSL Ubuntu版本,点击以下链接直达:

https://developer.nvidia.com/cuda-11-8-0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=WSL-Ubuntu&target_version=2.0&target_type=runfile_local

CUDA11.8_Linux下载

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run

CUDA安装配置

sudo sh cuda_11.8.0_520.61.05_linux.runrm -rf /usr/local/cuda
ln -s /usr/local/cuda-11.8 /usr/local/cudavi ~/.bashrc
# 添加如下环境变量
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

验证CUDA安装

nvcc -V

安装cuDnn

cuDnn需要配套CUDA版本,配套参考cuDnn官网:

cuDnn下载地址:https://developer.nvidia.com/rdp/cudnn-archive

cuDNN8.9.7_Linux下载

https://developer.nvidia.com/downloads/compute/cudnn/secure/8.9.7/local_installers/11.x/cudnn-linux-x86_64-8.9.7.29_cuda11-archive.tar.xz/

cuDnn安装配置

tar -xvf cudnn-linux-x86_64-8.9.7.29_cuda11-archive.tar.xzcd cudnn-*-archivesudo cp include/cudnn*.h /usr/local/cuda/include 
sudo cp -P lib/libcudnn* /usr/local/cuda/lib64 
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

Pytorch安装

Pytorch与CUDA配套

Pytorch与CUDA配套关系参考:https://pytorch.org/get-started/locally/

使用如下命令可以安装CUDA11.8配套的pytorch,有时候安装不成功,可能与CUDA安装有关系,待验证。

conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

如果你的硬件配置和我一样,建议直接下载以下链接的whl进行安装。实测OK。

torch和torchvision配套

建议参考: https://github.com/pytorch/vision#installation

可以看到如果选择torch版本是2.1.0,可以安装0.16版本的torchvision。

torch和torchvision下载地址: ​​​​​​https://download.pytorch.org/whl/torch_stable.html

torch和torchaudio配套

建议参考:Installing pre-built binaries — Torchaudio 2.2.0.dev20240323 documentation

torch2.1.0下载地址

https://download.pytorch.org/whl/cu118/torch-2.1.0%2Bcu118-cp39-cp39-linux_x86_64.whl

torchvision0.16.0下载地址

https://download.pytorch.org/whl/cu118/torchvision-0.16.0%2Bcu118-cp39-cp39-linux_x86_64.whl

torchaudio2.1.0下载地址

https://download.pytorch.org/whl/cpu/torchaudio-2.1.0%2Bcpu-cp39-cp39-linux_x86_64.whl#sha256=b2f634b380264010916d26324ab0f2040412e77029b1cfe59333adf2070f4b99

迅雷云盘备份

https://pan.xunlei.com/s/VNtUlafg0sA20sbCU3fsEsaIA1?pwd=uiy7#
 

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

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

相关文章

网络原理(6)——IP协议

目录 一、网段划分 现在的网络划分: 1、一般情况下的家庭网络环境 2、IP地址 3、子网掩码 4、网关 以前的网络划分: 二、特殊IP 1、环回 IP 2、主机号为全 0 的IP 3、广播地址IP 三、路由选择(路线规划) 一、网段划分…

毕业论文降重(gpt+完美降重指令),sci论文降重gpt指令——超级好用,重复率低于4%

1. 降重方法:gpt降重指令 2. gpt网站 https://yiyan.baidu.com/ https://chat.openai.com/ 3. 降重指令——非常好用!!sci论文,本硕大论文都可使用! 请帮我把下面句子重新组织,通过调整句子逻辑&#xff0…

通过命令在Windows入站出站放行上放行端口8090, 8443, 5222, 8021

可以通过循环结构来简化操作,下面分别创建入站和出站规则的示例: 入站规则 $ports 8090, 8443, 5222, 8021foreach ($port in $ports) {New-NetFirewallRule -DisplayName "Allow Inbound Port $($port)" -Direction Inbound -Action Allow…

day6:STM32MP157——串口通信实验

使用的是cortex A7内核 【串口通信的工作原理】 本次实验使用的是uart4的串口,分别使用了uart4_tx和uart4_rx两个引脚。根据板子的原理图我们可以知道,他们分别对应着芯片的PG11和PB2 从引脚名字也可以知道使用了GPIO口,所以本次实验同样需…

array go 语言的数组 /切片

内存地址通过& package mainimport "fmt"func main() {var arr [2][3]int16fmt.Println(arr)fmt.Printf("arr的地址是: %p \n", &arr)fmt.Printf("arr[0]的地址是 %p \n", &arr[0])fmt.Printf("arr[0][0]的地址是 %p \n"…

动态规划Dynamic Programming

上篇文章我们简单入门了动态规划(一般都是简单的上楼梯,分析数据等问题)点我跳转,今天给大家带来的是路径问题,相对于上一篇在一维中摸爬滚打,这次就要上升到二维解决问题,但都用的是动态规划思…

手机termux上用hydra在线暴力穷举破解

HYDRA 是一个在线暴力破解工具,速度快,穷举稳定,支持50线程的暴力穷举破解,兼容的协议也多,telnet, ftp, http, https, smb, 多数网页服务的databases,应用广泛。 在手机termux上也可以轻松实现。 不废话…

开源博客项目Blog .NET Core源码学习(10:App.Framwork项目结构分析)

开源博客项目Blog的解决方案总共包括4个项目,其中App.Hosting项目包括所有的页面及控制器类,其它项目主要提供数据库访问、基础类型定义等。这四个项目的依赖关系如下图所示,本文主要分析App.Framwork项目的主要结构及主要文件的用途。   …

水瓶座性格分析及星座配对!

水瓶座性格分析及星座配对! 标签:水瓶座 水/瓶/座 1.20~2.18 “珍爱生命,远离水瓶” 这是一个被水瓶座折磨的巨蟹文艺男青年的呐喊 “都是外星人,根本没法沟通” 这是号称水瓶最佳基友的逆生长射手妹子…

21.同步模式-保护性暂停

1.Guarded Suspension,用在一个线程等待另一个线程的执行结果。 2.一个结果从一个线程传递到另一个线程,让他们关联同一个GuardedObject 保护对象。 3.如果有结果不断从一个线程到另一个线程,那么可以使用消息队列。 4.join方法和Future的实现&#x…

JavaScript原型、原型对象、原型链系列详解(三)

(三)、JavaScript原型链 原型链 在 JavaScript 中,对象之间的继承是通过原型链来实现的。每个对象都有一个指向原型对象的内部链接,也就是 [[Prototype]] 属性。这个链接的作用是如果对象本身没有某个属性或方法,就会去它的原型对象上找&…

Linux 进程通信:匿名管道、实现进程池

目录 一、进程间通信 1、 为什么需要进程通信 2、发展和分类 二、管道 1、概念 2、特点 2、复制并共享 3、用fork来共享管道原理 4、站在文件描述符角度-深度理解管道 5、站在内核角度-管道本质 三、匿名管道 1、概念 2、创建 3、snprintf 4、父子进程中进行单…

小程序英文口语发音评测

一、英文口语评测需求 在全球化的今天,英语已经成为了世界上最重要的国际语言之一。无论是在国际商务、科技研究、教育还是日常生活中,英语都扮演着举足轻重的角色。因此,掌握英文口语的能力对于个人的职业发展、学术研究以及跨文化交流都具…

【Linux】vim配置及安装方法

注 安装方法在文章最后 配置文件的位置 在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为“.vimrc”。例如&…

atoi函数详解

atoi函数使用方法 在c官网中是这样介绍atoi函数的 通俗的讲就是把字符串中的字符数字转换为整形数字,遇到空格就跳过,如果在字符串开始遇到不是有效的整数比如说abc就直接返回0,如果遇到像这种情况123abc345这个就只返回123,这个…

C语言数据结构之计数排序

世中逢尔 雨中逢花 目录 计数排序的介绍 代码展示 时间复杂度和空间父复杂度 计数排序的用途 计数排序的局限性 计数排序的介绍 排序原理 计数排序又称为鸽巢原理,是对哈希直接定址法的变形应用。 是一个不比较排序算法,通过计数将时间复杂度降到了O…

大型网站集群管理负载均衡

课程介绍 结合企业大规模应用,解决应用高并发问题,解决单节点故障问题,缓存数据库的应用。学完掌握知识点:企业应用实现四七层负载均衡,以及Nginx等应用的高可用性,Redis缓存数据库的部署应用以及高可用方…

【Redis】优惠券秒杀

全局唯一ID 全局唯一ID生成策略: UUIDRedis自增snowflake算法数据库自增 Redis自增ID策略:每天一个key,方便统计订单量ID构造是 时间戳 计数器 Component public class RedisIdWorker {// 2024的第一时刻private static final long BEGIN…

Unity 背包系统中拖拽物体到指定位置或互换位置效果的实现

在Unity中,背包系统是一种常见的游戏系统,可以用于管理和展示玩家所持有的物品、道具或装备。 其中的拖拽功能非常有意思,具体功能就是玩家可以通过拖拽物品图标来移动物品在背包中的位置,或者将物品拖拽到其他位置或界面中&…

29双体系Java学习之编程的基本过程和类的通用格式

编程的基本过程 类的通用格式 ★小贴士 类的设计应遵循单一职责原则(SRP),即只能让一个类有且仅有一个职责,以保证修改的可能性尽量少。