查看记录Linux当前系统环境下已经安装好的CUDA和cuDNN版本信息

news2025/1/14 18:21:29

在实际工作中,经常需要接触服务器,有时候在实施部署的时候需要对裸机进行安装和部署,涉及到深度学习环境搭建的话就会比较耗时一些,为了简化操作工作以及保证与开发好的模型完美兼容最好的办法就是与我们自己的开发机器保持完全相同的环境版本,这时候就需要查询开发机器上的操作环境,本文主要是在实际使用的时候记录一下CUDA和cuDNN内容的查询操作。

1、查看 CUDA 版本

执行下面的命令来进行查询:

nvcc --version

或者:

nvcc -V

结果如下所示:

2、查看 cuDNN 版本

执行下面的命令:

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

或者:

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

在我的系统上执行第一条命令报错:

 No such file or directory

执行第二条命令输出如下:

#define CUDNN_MAJOR 7
#define CUDNN_MINOR 4
#define CUDNN_PATCHLEVEL 2
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)

#include "driver_types.h"

从上面的信息不难看出这里我们使用的cuDNN版本是: 7.4.2

3、查看 GPU 信息

执行下面的命令可以完整查看GPU的详情信息:

nvidia-smi

结果如下所示:

这里面可以看到我们使用的驱动版本是:450.80.02

如果无法通过 cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2 和 ldconfig -p | grep cudnn 命令正确显示 cuDNN 的版本信息,可以尝试以下几种方法来获取 cuDNN 的版本信息:

方法 1: 检查 cuDNN 安装路径

首先,确认 cuDNN 的安装路径。通常,cuDNN 的库文件和头文件会安装在 /usr/local/cuda/include 和 /usr/local/cuda/lib64 目录下。

方法 2: 使用 dpkg 或 rpm 命令(适用于基于 Debian 或 Red Hat 的系统)

如果你是通过包管理器(如 apt 或 yum)安装的 cuDNN,可以使用以下命令来查看 cuDNN 的版本信息:

对于基于 Debian 的系统(如 Ubuntu):
dpkg -l | grep cudnn
对于基于 Red Hat 的系统(如 CentOS):
rpm -qa | grep cudnn

方法 3: 手动查找 cuDNN 版本信息

如果上述方法都无法获取 cuDNN 版本信息,可以手动查找 cuDNN 的版本信息文件。通常,cuDNN 的版本信息会包含在以下文件中:

  1. cuDNN 头文件

    cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
  2. cuDNN 库文件

    strings /usr/local/cuda/lib64/libcudnn.so | grep CUDNN_MAJOR

方法 4: 使用 nvcc 编译测试程序

你可以编写一个简单的 C++ 程序来检查 cuDNN 版本信息:

  1. 创建一个 C++ 文件(例如 cudnn_version.cpp):

    #include <iostream>
    #include <cudnn.h>
    
    int main() {
        std::cout << "cuDNN Version: " << CUDNN_MAJOR << "." << CUDNN_MINOR << "." << CUDNN_PATCHLEVEL << std::endl;
        return 0;
    }
  2. 编译并运行程序

    nvcc -o cudnn_version cudnn_version.cpp -lcudnn
    ./cudnn_version

通过以上方法,应该能够获取 cuDNN 的版本信息。

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

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

相关文章

Unity 2D角色的跳跃与二段跳示例

如图&#xff0c;实现这样的效果 其实非常简单&#xff0c;就两个必要条件 触发&#xff1a;一定是按下触发 跳跃次数&#xff1a;一定大于0 声明跳跃次数 public int jumpCount;//多段跳次数 还有一个可以优化的点&#xff0c;就是如果你想角色的多段跳可以有第一次跳的那么…

C语言复习概要(六)

公主请阅 1. 深入理解数组与指针在C语言中的应用1.1 数组名的理解 2. 使用指针访问数组3. 一维数组传参的本质4. 冒泡排序的实现5. 二级指针6. 指针数组7. 指针数组模拟二维数组8.总结 1. 深入理解数组与指针在C语言中的应用 数组与指针是C语言的核心概念之一&#xff0c;理解…

无极低码课程【mysql windows下安装要点】

在Windows环境中安装MySQL 5.7教程 MySQL 是世界上最流行的开源关系型数据库管理系统之一。本教程将指导您在Windows操作系统上安装MySQL 5.7。 网上教程较多&#xff0c;这里不再详述&#xff0c;注意关键点即可 准备工作 下载MySQL 5.7安装包 访问 MySQL官方网站 下载MyS…

新年好——Dijkstra+Permutation

题目 代码 #include <bits/stdc.h> using namespace std; #define x first #define y second typedef pair<int, int> PII; const int N 5e410, M 2e510; const int inf 0x3f3f3f3f; int n, m; int a[6]; int h[N], e[M], ne[M], idx, w[M]; int dist[6][N];…

用Python实现运筹学——Day 17: 0-1 整数规划

一、学习内容 1. 0-1 整数规划的定义 0-1 整数规划是一类特殊的整数规划问题&#xff0c;决策变量只能取 0 或 1。它常用于解决选择问题&#xff0c;如是否选择某个项目、是否执行某个任务等。决策变量 ​ 通常表示“选择”&#xff08;&#xff09;或“不选择”&#xff08;…

实用宝典:元器件外贸独立站电子元件数据库设置完全手册

对于投身于元器件外贸领域的企业来说&#xff0c;如何建立一个既能凸显自身特色又具备高度功能性与良好用户体验的独立站&#xff1f;而在这一过程中&#xff0c;#电子元件数据库#作为独立站的核心要素之一&#xff0c;它的构建质量和管理方式又将如何直接影响网站的整体竞争力…

Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)

引言 想象一下&#xff0c;只要描述你想要的画面&#xff0c;电脑就能帮你画出来。这在几年前还像是科幻小说里的场景&#xff0c;但随着神经网络和潜在扩散模型&#xff08;LDM&#xff09;技术的发展&#xff0c;现在已经成为可能。OpenAI 推出的 DALLE 工具&#xff0c;因其…

STM32L151 多通道ADC DMA循环扫描STM32CubeIDE STM32CubeMX参考设计

简介 项目开发过程中&#xff0c;采用STM32L151 芯片进行涉及&#xff0c;其中需要使用其片上ADC进行多路ADC数据采样。这里就记录一下实际这块的开发过程&#xff0c;其中涉及工程代码再项目中实际投产使用。STM32L151 多通道ADC DMA循环扫描STM32CubeIDE STM32CubeMX参考设计…

【文心智能体 | AI大师工坊】通过知识库优化智能体『万圣节之纸人还魂』:探索恐怖剧本杀的奇幻之旅

文章目录 1.1、智能体运行效果1.2、创作灵感来源1.3、如何制作智能体1.4、可能会遇到的几个问题1.5、快速调优指南 My_优质智能体『万圣节之纸人还魂&#x1f47b;』&#xff1a;https://aq58pt.smartapps.baidu.com/?_swebfr1&_swebScene3611000100000000 在当今人工智能…

Vue开发中由错误These relative modules were not found 引起的问题思考及解决

一、由Vue: These relative modules were not found 引起的问题 1、vue2.6.14 These relative modules were not found 在使用vue2.6.14开发的项目在本地windows 10上都一直成功&#xff0c;想放到jenkins上进行发布。之前其它的 vue 项目也都能发布正常&#xff0c;但此次一…

【stm32】DMA的介绍与使用

DMA的介绍与使用 1、DMA简介2、存储器映像3、DMA框图4、DMA基本结构5、DMA请求6、数据宽度与对齐7、数据转运DMA&#xff08;存储器到存储器的数据转运&#xff09;程序编写&#xff1a; 8、ADC连续扫描模式DMA循环转运DMA配置&#xff1a;程序编写&#xff1a; 1、DMA简介 DM…

Antsword-labs靶机渗透

Less-1 在当前界面开启终端 ![](https://img-blog.csdnimg.cn/img_convert/e5ab1b947b1186a43b58abaf10263cb1.png) 启动环境 plain docker-compose up -d 蚁剑连接 ![](https://img-blog.csdnimg.cn/img_convert/81a5c09987e18355335d07e4da52cb5f.png) 打开终端寻找flag …

ACL:访问控制列表

基本概念 1.访问控制: 在路由器的入或者出的接口上&#xff0c;匹配流量&#xff0c;之后产生动作&#xff0c;只有允许和拒绝。 2.定义感兴趣流量: 帮助其他策略抓流量的 匹配规则:至上而下 逐一匹配 上条匹配按照上条执行 不再查看下条 (思科体系中 末尾隐含拒绝所有 华为…

20个月投标战胜国际对手,中国百余台AGV进驻欧洲……

导语 大家好&#xff0c;我是社长&#xff0c;老K。专注分享智能制造和智能仓储物流等内容。 在全球智能制造竞争日益激烈的今天&#xff0c;中国制造再次传来振奋人心的好消息。 经过长达20个月的艰苦角逐&#xff0c;一家中国机器人企业&#xff08;新松机器人&#xff09;成…

microsoft edge浏览器卡死问题

win11经常遇到microsoft edge浏览器卡死的情况&#xff0c;有时候是一会没用浏览器就全部卡死&#xff0c;有时候是锁屏或者电脑休眠浏览器就不能用&#xff0c;找了很多的办法都没好使&#xff0c;用以下方法好使了&#xff1a; edge浏览器中打开 edge://settings/system 把 …

计算机的错误计算(一百二十三)

摘要 探讨算式 的计算精度问题。 例1. 已知 计算 不妨在Python下计算&#xff0c;则有&#xff1a; 若用Rust在线计算&#xff1a; fn main() {let x: f64 0.125e-6;let tan_x x.tan();let sin_x x.sin();let denominator x - (1.0 x * x).sqrt();let result (…

大学模拟电路设计期末速成总结

大学模拟电路设计期末速成总结 模拟电路设计是电子工程领域的基础&#xff0c;它涉及到连续信号的处理和放大。对于电子工程的学生来说&#xff0c;掌握模拟电路设计的基本原理和应用是至关重要的。以下是期末速成总结&#xff0c;帮助你快速回顾和掌握模拟电路设计的关键知识…

香橙派刷机和开发环境准备(ubuntu22.04版)_随记1

前言&#xff1a; 一、香橙派刷ubuntu系统和SSH登录 1、刷机前准备&#xff1a; ①TF卡&#xff08;8G&#xff09;、读卡器、OrangePi5Pro ②Win32DiskImager&#xff08;烧写系统工具&#xff09;、SDFormatter&#xff08;TF格式化工具&#xff09; ③系统镜像&#xff…

学习文档(4)

目录 Vue简介 MVVM思想 Vue指令 内容输出指令 条件渲染指令 列表渲染指令 数据绑定指令 Vue简介 Vue2.x官网&#xff1a;https://v2.cn.vuejs.org Vue3.x官网&#xff1a;https://cn.vuejs.org 官网&#xff08;2.x版本&#xff09;对vue的定义是&#xff1a;vue是一套…

kubelet PLEG实现

概述 kubelet的主要作用是确保pod状态和podspec保持一致&#xff0c;这里的pod状态包括pod中的container状态&#xff0c;个数等。 为了达到这个目的&#xff0c;kubelet需要从多个来源watch pod spec的变化&#xff0c;并周期从container runtime获取最新的container状态。比如…