nvidia-smi nvcc -V 及 CUDA、cuDNN 安装

news2024/11/15 19:47:29

nvidia-smi nvcc -V 及 CUDA、cuDNN 安装

  • 1. 问题缘由
  • 2. 分析
  • 3. CUDA Driver API 安装
    • 3.1 Software & Updates
    • 3.2 官网下载
  • 4. CUDA Runtime API 安装
  • 5. 安装 cuDNN
    • 5.1 cuDNN下载
  • 6. 一点点小注意事项

1. 问题缘由

之前查找 CUDA 版本时都是直接使用的 nvidia-smi 指令,可以看到当前的 CUDA 版本是 12.0。
在这里插入图片描述

这时在使用 PyTorch 的时候,默认安装的与该 CUDA 相同版本的 PyTorch。

但是后面在编译程序的时候,问题就出现了程序内会报 CUDA_TOOLKIT_ROOT_DIR not found or specified 的错误,有些摸不着头脑。

然后就发现使用 nvcc-V 命令查看的时候,是找不到 CUDA 的。
在这里插入图片描述

2. 分析

这是因为 CUDA 有两种 API:运行时的 API 和驱动 API,即所谓的 Runtime API 与 Driver API。nvidia-smi 的结果除了有 GPU 驱动版本型号,还有 CUDA Driver API 的型号,即上面的 12.0。

nvcc-V 的结果是对应 CUDA Runtime API。而这时的 CUDA Runtime API 还没有安装。

3. CUDA Driver API 安装

3.1 Software & Updates

如果想更新或安装 nvidia-smi 上的 CUDA 版本,最简单的方式是直接打开 Software & Updates,点击 Additional Drivers
在这里插入图片描述
选择一个驱动版本即可。

3.2 官网下载

在官网下载能看见更直观的 CUDA 版本:https://www.nvidia.cn/geforce/drivers/
在这里插入图片描述

选择对应的显卡款式安装即可。

4. CUDA Runtime API 安装

  1. 命令行键入 nvidia-smi 可以看到系统支持的最大CUDA版本,如果没有就不用管。因为上面截图过了这里就不放截图了。因为上面显示版本为 12.0,所以这里安装的 CUDA 最大版本应该是 12.0。
  2. 在英伟达官网找到想要安装的 CUDA 版本:https://developer.nvidia.com/cuda-11.1.0-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=runfilelocal

在这里插入图片描述
3. 依照上面流程,输入:

sudo sh cuda_11.1.0_455.23.05_linux.run

  1. 键入accept:
    在这里插入图片描述

  2. 注意,这个步骤如果前面安装了 Driver,即步骤1内显示了版本时,这里不要安装 Driver,否则这里的 CUDA 会安装失败;如果步骤1未安装,这里可以勾选。(这里我的.run软件不小心删了,拿的别人的,所以除了版本均一致)
    在这里插入图片描述

  3. 安装成功后,打开.bashrc 或 .zshrc,写入以下信息:

    export PATH=$PATH:/usr/local/cuda/bin
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
    export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
    
  4. 用 source 更新以下环境或重新打开一个终端,命令行输入 nvcc -V,显示下面内容就是成功了:
    在这里插入图片描述

5. 安装 cuDNN

5.1 cuDNN下载

  1. cuDNN 地址如下 https://developer.nvidia.com/rdp/cudnn-download,不过要注意的是,需要注册一个账号,才能进入下载界面,建议下载 tar 的:

在这里插入图片描述

  1. 详细的安装教程如下所示:https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html

  2. 解压 tar 后,使用以下指令将文件复制进 CUDA toolkit 目录:

    $ sudo cp cudnn--archive/include/cudnn.h /usr/local/cuda/include
    $ sudo cp -P cudnn--archive/lib/libcudnn /usr/local/cuda/lib64
    $ sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

    这样就可以使用了。

6. 一点点小注意事项

在下载 PyTorch 时,这里的 Compute Platform 是运行的平台,这里是不包括 CUDA 安装的。
在这里插入图片描述

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

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

相关文章

软考A计划-网络工程师-复习背熟-数据通信基础和局域网技术

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 👉关于作者 专注于Android/Unity和各种游…

Power View

界面 切换可视化效果 对于已经上传到透视表的数据,选择power view,形成表格后。

Windows开发调试纯Linux代码(WSL+Qt+MobaXterm)环境搭建(超详细教程)

为何要调试Linux代码 1 学习Linux环境开发 想必很多同学都想学习Linux环境下的开发,一个是很多纯服务端程序不需要Windows这样的窗口界面。另一个纯服务端开发Linux的命令行以及脚本优势也比较明显。相反,Windows在纯服务端编程方面并没有Linux有优势。…

拓扑排序算法 -- dfs、bfs

210. 课程表 II 该题用到「拓扑排序」的算法思想,关于拓扑排序,直观地说就是,让你把⼀幅图「拉平」,⽽且这个「拉平」的图⾥⾯,所有箭头⽅向都是⼀致的,⽐如上图所有箭头都是朝右的。 很显然,如…

CVE-2023-32315:Openfire管理控制台身份验证绕过到RCE的复现

CVE-2023-32315:Openfire管理控制台身份验证绕过到RCE复现 前言 本次测试仅供学习使用,如若非法他用,与本文作者无关,需自行负责!!! 一.Openfire简介 Openfire是根据开源Apache许可证授权的…

C语言——指针基本语法

概述 内存地址 在计算机内存中,每个存储单元都有一个唯一的地址(内存编号)。 通俗理解,内存就是房间,地址就是门牌号 指针和指针变量 指针(Pointer)是一种特殊的变量类型,它用于存储内存地址。 指针的实…

46、SpringBoot输入校验--JSR 303

★ Spring Boot的输入校验 springboot支持两种校验方式:1. Spring原生提供的 Validation,这种验证方式需要开发者手写验证代码,比较繁琐。就是普通的if判断2. 使用JSR 303的校验,这种验证方式只需使用注解、即可以声明式的方式进…

封装(个人学习笔记黑马学习)

1、格式 #include <iostream> using namespace std;const double PI 3.14;//设计一个圆类&#xff0c;求圆的周长 class Circle {//访问权限//公共权限 public://属性//半径int m_r;//行为//获取圆的周长double calculateZC() {return 2 * PI * m_r;} };int main() {//通…

MBA/MEM联考已经过了“蛮干”的时间段了……

如果MBA/MEM备考存在有效的方式&#xff0c;倾注时间一定是最靠谱的&#xff01;如果要靠谱的一点的方式&#xff0c;那就是大量的倾注时间&#xff01;可问题目前已经没有“大量”的时间可以用了&#xff0c;因为对于在职考生而言&#xff0c;最难得得也恰恰就是时间&#xff…

软件总体部署:Total Software Deployment Crack

TNI 6.1&#xff1a;数据传输模式的新界面和功能 根据您向支持团队提供的反馈&#xff0c;我们对“数据传输”窗口的机制和界面进行了重大重新设计。 概述 远程和自动化软件部署 全面软件部署&#xff1a;企业网络的托管软件部署。 远程和自动化软件部署 Total Software Deplo…

碳中和数据合集(含上市公司碳排放、碳减排、排污费、环境税等数据)1990-2022年

数据简介&#xff1a;“推动企业形成绿色生产方式和生活方式”“支持有条件的地方和重点行业、重点企业率先达到碳排放峰值”。可见&#xff0c;企业已成为应对气候变化、推动低碳转型、助力“双碳”目标实现的主力军&#xff0c;推动其绿色、低碳化转型已成为未来经济发展的必…

OpenCV(十三):图像中绘制直线、圆形、椭圆形、矩形、多边形和文字

目录 1.绘制直线line() 2.绘制圆形circle() 3.绘制椭圆形ellipse() 4.绘制矩形rectangle() 5.绘制多边形 fillPoly() 6.绘制文字putText() 7.例子 1.绘制直线line() CV_EXPORTS_W void line(InputOutputArray img,Point pt1, Point pt2,const Scalar& color,int t…

“宽带中国”城市试点与专利匹配数据,做一个多期DID(2010-2021)

数据简介&#xff1a;人类正在经历以互联网为基础的第三次技术革命&#xff0c;作为以“互联网”为底层基础的数字经济&#xff0c;以5G、人工智能和大数据中心为代表的数字基础设施建设和普惠宽带网络基础设施建设成为数字经济可持续发展的动力。工业和信息化部、国家发展和改…

uniapp小程序单页面改变手机电量,头部通知的颜色效果demo(整理)

onShow(){ // 改变电池的颜色 wx.setNavigationBarColor({ frontColor: ‘#ffffff’, //只支持两种颜色 backgroundColor: ‘#ffffff’, animation: { duration: 1 } }) }

个微API接口开发

请求URL&#xff1a; http://域名地址/sendText 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 参数&#xff1a; 参数名必选类型说明wId是string登录实例标识wcId是string接收…

常见链表的操作题+代码

文章目录 leetcode 2 两数相加leetcode 19删除链表中的倒数第N个节点leetcode 21合并两个有序链表leetcode 24两两交换链表中的节点leetcode 25k个一组链表反转leetcode 61旋转链表 leetcode 2 两数相加 两个链表对应的值进行相加&#xff0c;如何计算呢&#xff1f; 考虑点&…

2.3 数据模型

思维导图&#xff1a; 前言&#xff1a; 我的理解&#xff1a; 这段话介绍了概念模型和数据模型之间的关系&#xff0c;以及数据模型的定义和重要性。具体解读如下&#xff1a; 1. **概念模型**&#xff1a;它是一种描述现实世界数据关系的抽象模型&#xff0c;不依赖于任何…

unity 场景烘培(边学习,边记录)

前言&#xff1a;好记性不如烂笔头&#xff0c;本文只提供参考&#xff01; 问题总结&#xff1a;1.unity 场景烘焙问题之模型UV有重叠_野区捕龙为宠的博客-CSDN博客 一、光源种类&#xff08;摘录&#xff1a;Unity灯光&#xff08;light&#xff09;_浮影℡的博客-CSDN博客…

Win10搭建VisualSvn Server

Win10搭建VisualSvn Server 目录 Win10搭建VisualSvn Server一、下载VisualSvn Server安装包二、安装VisualSvn Server三、配置和使用VisualSVN Server四、添加用户及权限设定方法五、创建目录及配置权限 1、服务端&#xff1a;有集成了Subversion和Apache、安装使用非常简单且…

软件第三方验收测评介绍

软件第三方验收测试 软件项目验收测试介绍&#xff1a; 软件项目验收测试是部署软件之前的最后一个测试操作&#xff0c;是对系统进行全面的测试&#xff0c;以验证其是否符合合同要求&#xff0c;出具第三方测试报告&#xff0c;为系统验收提供依据。 验收测试的目的是&…