wsl子系统Ubuntu18.04,cuDNN安装

如果觉得本篇文章对您的学习起到帮助作用,请 点赞 + 关注 + 评论 ,留下您的足迹💪💪💪

本文主要wls子系统Ubuntu18.04安装cuDNN,安装cudnn坑巨多,因此记录以备日后查看,同时,如果能够帮助到更多人,也不胜荣幸。

文章目录

  • 一、下载安装包
  • 二、安装deb文件
    • 1、进入文件目录
    • 2、安装:
    • 3、导入CUDA GPG密钥:
    • 4、更新:
    • 5、安装运行时库:
    • 6、安装开发库
    • 7、安装例子
  • 三、Linux操作系统安装验证
    • 1、将cuDNN示例复制到可写路径
    • 2、转到路径
    • 3、安装deb文件
    • 4、安装依赖
    • 5、执行测试文件

下载Debian本地存储库安装包。在发出以下命令之前,必须替换X.Y和x.x.x与您特定的CUDA和cuDNN版本。

一、下载安装包

下载Debian本地存储库安装包,根据CUDA版本,下载合适的cudnn版本,点击此处下载cudnn。
在这里插入图片描述
本人使用的cuda11.6,因此下载cuDNN8.5.0.96 CUDA 11.x这个版本。

二、安装deb文件

1、进入文件目录

进入cudnn-local-repo-ubuntu1804-8.5.0.96_1.0-1_amd64.deb文件所在文件夹,我们将deb文件存放在用户家目录下

cd ~

2、安装:

sudo dpkg -i cudnn-local-repo-${distro}-8.x.x.x_1.0-1_amd64.deb
# sudo dpkg -i cudnn-local-repo-ubuntu1804-8.5.0.96_1.0-1_amd64.deb

3、导入CUDA GPG密钥:

sudo cp /var/cudnn-local-repo-*/cudnn-local-*-keyring.gpg /usr/share/keyrings/
# sudo cp /var/cudnn-local-repo-ubuntu1804-8.5.0.96/cudnn-local-7B49EDBC-keyring.gpg /usr/share/keyrings/

4、更新:

sudo apt-get update

更新完成后,注意以下信息
在这里插入图片描述
进入/var/cudnn-local-repo-ubuntu18.04-8.5.0.96目录,查看目录信息

cd /var/cudnn-local-repo-ubuntu18.04-8.5.0.96
ls

在这里插入图片描述
可以看到三个红色deb文件的cuda版本号是11.7,读者安装时要注意看您的信息内容。

5、安装运行时库:

sudo apt-get install libcudnn8=8.x.x.x-1+cudaX.Y
# sudo apt-get install libcudnn8=8.5.0.96-1+cuda11.7	# 与上面看到的版本号要一致

6、安装开发库

sudo apt-get install libcudnn8-dev=8.x.x.x-1+cudaX.Y
# sudo apt-get install libcudnn8-dev=8.5.0.96-1+cuda11.7

7、安装例子

sudo apt-get install libcudnn8-samples=8.x.x.x-1+cudaX.Y
# sudo apt-get install libcudnn8-samples=8.5.0.96-1+cuda11.7

三、Linux操作系统安装验证

为了验证cuDNN已经安装并正常运行,编译位于文件/usr/src/cudnn_samples_v8目录下的mnistCUDNN示例。

1、将cuDNN示例复制到可写路径

cp -r /usr/src/cudnn_samples_v8/ $HOME

2、转到路径

cd $HOME/cudnn_samples_v8/mnistCUDNN

3、安装deb文件

还记得上面的三个CUDA版本号为11.7的deb文件吗?安装它们,执行:

cd /var/cudnn-local-repo-ubuntu18.04-8.5.0.96
sudo dpkg -i libcudnn8-dev_8.5.0.96-1+cuda11.7_amd64.deb
sudo dpkg -i libcudnn8-samples_8.5.0.96-1+cuda11.7_amd64.deb
sudo dpkg -i libcudnn8_8.5.0.96-1+cuda11.7_amd64.deb

读者根据自己的cuDNN版本号修改。

4、安装依赖

sudo apt-get install libfreeimage3 libfreeimage-dev

5、执行测试文件

cd $HOME/cudnn_samples_v8/mnistCUDNN
make clean && make
./mnistCUDNN

在这里插入图片描述
显示Test passed!代表安装成功!!!!

如果您觉得这篇文章对你有帮助,记得 点赞 + 关注 + 评论 三连,您只需动一动手指,将会鼓励我创作出更好的文章,快留下你的足迹吧💪💪💪

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

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

相关文章

PC市场寒冬,大众还需要PC吗?

PC市场寒冬,大众还需要PC吗? PC(个人电脑)市场从2016年智能手机兴起之时便进入下滑态势,到2020年疫情发生后,居家办公、在线教育等需求曾给PC市场带来连续六个季度的增长。⁴ 好景不长,进入202…

A Survey on Multimodal Large Language Models

本文是LLM系列的文章之一,主要是讲解多模态的LLM。针对《A Survey on Multimodal Large Language Models》的翻译。 多模态大语言模型的综述 摘要1 引言2 概述3 方法3.1 多模态指令调整3.1.1 引言3.1.2 前言3.1.3 模态对齐3.1.4 数据3.1.5 模态桥接3.1.6 评估 3.2 …

Android Studio实现内容丰富的安卓美食管理发布平台

如需源码可以添加q-------3290510686,也有演示视频演示具体功能,源码不免费,尊重创作,尊重劳动。 项目编号079 1.开发环境 android stuido jdk1.8 eclipse mysql tomcat 2.功能介绍 安卓端: 1.注册登录 2.查看公告 3.查…

【网络进阶】Posix API与网络协议栈(三)

文章目录 1. 网络攻击和POSIX API与网络协议栈的关系1.1 网络攻击的基本概念和它们对协议栈的影响1.2 分布式拒绝服务(DDoS)攻击和网络协议栈1.3 地址解析协议(ARP)欺骗和POSIX API 2. 网络协议栈的理解和划分2.1 OSI七层模型2.2 …

PostgreSQL使用localhost可以连接,使用IP无法连接

问题描述:PostgreSQL使用localhost可以连接,使用IP无法连接 默认情况下,刚安装完成的 postgresSQL12 无法使用 数据库连接工具(如postman)连接。需要为其修改配置,开放连接权限。 修改pg_hba.conf 增加…

B063-基础环境-后端环境 Lombok Restful postman swagger

目录 项目介绍需求分析项目架构项目技术架构前后端分离前后端分离开发模式前后端分离优缺点 后端项目搭建-部门模块项目端口规划创建SpringBoot项目流程整合SSM引用属性传值 LombokRestful风格Postman接口测试swagger接口规范其他 项目介绍 本项目是一个(Online To…

蓝奥声开发高性价比智能wifi插座进军智能家居

关键词:智能家居、家用插座、WiFi插座、高性价比插座 智能硬件的大潮袭来让智能家居这一并不新鲜的概念再次火热起来,关于智能家居的各种场景的描述给了我们很大的想象空间,然而落到实处真正开始走进生活时却又显得那么骨感,一时间…

使用EXCEL公式编程从网页获取股票数据并保存到excel

共享文件地址 在dataexcel服务器的 /示例/03函数示例/获取股票数据8.fexm 路径 公式脚本 var urlcelltext("URL");//获取单元格ID为URL的单元格内容 var txtWebGet(url); //从网页获取数据 cellvalue("data",txt); //将获取到的数据库保存到ID为DATA的单…

JMeter从数据库中获取数据并作为变量使用

目录 前言: 1、JMeter连接MySQL数据库 2、线程组下新建一个 JDBC Connection Configuration 配置元件 3、实现数据库的查询-单值引用 4、实现数据库的查询-多值引用 前言: 在进行接口测试时,经常需要使用一些动态的数据,例如…

TypeScript学习(一):快速入门

文章目录 一、TypeScript 简介1、TypeScript 是什么?2、TypeScript 与 JavaScript 的区别3、JavaScript 的缺点4、为什么使用 TypeScript 二、TypeScript 开发环境搭建1、下载Node.js2、安装Node.js3、使用npm全局安装TypeScript4、创建一个ts文件5、使用tsc对ts文件…

使用PyMC进行时间序列分层建模

在统计建模领域,理解总体趋势的同时解释群体差异的一个强大方法是分层(或多层)建模。这种方法允许参数随组而变化,并捕获组内和组间的变化。在时间序列数据中,这些特定于组的参数可以表示不同组随时间的不同模式。 今天,我们将深…

驱动开发 作业2

使用 ioctl 替换 write/read 控制 LED、蜂鸣器、马达、风扇,并使用 udev 来自动创建设备文件 完整代码目录,请看这个仓库依然使用之前 ARM 课程中的 common 中的结构体代码都差不多,就贴个 led.c ,用户空间测试代码 test.c 和头文…