当前位置: 首页 > news >正文

【CUDA】ubuntu环境下安装cuda

写在前面

  1. 软硬件匹配问题 :如老显卡安装ubuntu24, 会发现适合显卡的cuda不适合ubuntu24, 适合ubuntu24的cuda不适合显卡,因此安装ubuntu系统前,务必查明 :当前设备的显卡支持的cuda,支持哪些ubuntu版本

  2. 下面的三个问题是一体的,直接看具体实现就行,是完整安装cuda的流程,在新安装的ubuntu系统中已跑通

  3. 笔者环境:ubuntu 22.04,显卡GTX 1650,cuda 12.2,显卡驱动 535

主要存在问题

  1. 副屏闪烁,白屏
    ubuntu自带显卡驱动存在问题,在设置里的多显示器中可以发现副屏的刷新率不是整数
  2. 安装显卡驱动报错
    需要先打开魔法再安装,装很快大概没装完整
  3. 安装cuda驱动报错
    需要先安装nvidia显卡驱动,在安装cuda驱动时取消安装nvidia driver和nvidia-fs即可(部分cuda版本可能没有nvidia-fs选项,忽略即可)

具体实现

  1. 安装显卡驱动

    # 彻底清理残留驱动
    sudo apt-get autoremove --purge nvidia*  # 清除所有NVIDIA相关包
    sudo rm -rf /usr/lib/nvidia*             # 删除残留驱动文件
    sudo rm -rf /etc/modprobe.d/nvidia*      # 清除驱动配置
    
    # 禁用开源驱动 nouveau
    # 检查是否加载了nouveau
    lsmod | grep nouveau
    # 如果输出存在,执行以下命令:
    echo "blacklist nouveau" | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
    sudo update-initramfs -u
    # 此时会发现副屏黑了,这是正常的,完整装完显卡驱动就好了
    
    # 先打开魔法,确定能ping通外网,再执行下一步
    # 注意看上一行
    # 千万不要忽略我的注释
    # 记得打开魔法!这一步安装失败不会报错的
    sudo apt install nvidia-driver-535
    sudo reboot
    
    # 检查驱动版本,通常有信息输出,没报错,副屏恢复正常 就算安装成功了
    nvidia-smi  					# 应显示正常输出
    modinfo nvidia | grep ^version  # 确认内核模块版本与库版本一致
    
  2. 安装cuda
    在nvidia官网查找适合自己显卡硬件的驱动在这里插入图片描述

    红色框中的版本号就是显卡支持的cuda版本,根据这个版本下载即可
    像我这里,下载12.2.0,12.2.1, 12.2.2都是可以的

    (用魔法下载会快很多)
    根据自己的环境选项,然后使用自己的指令下载.run文件即可,指令位置如图所示,先确定再抄作业
    在这里插入图片描述
    下好的.run文件大概在根目录~/下
    在这里插入图片描述
    在该目录下打开终端,执行

    sudo sh cuda_12.2.2_535.104.05_linux.run
    

    然后跟着下图流程走
    在这里插入图片描述
    在这里插入图片描述
    取消driver和kernel,没有kernel可以不管
    在这里插入图片描述
    等待安装完成即可,安装成功会打印一个summary,并且可以在下图的路径中找到被安装的驱动
    在这里插入图片描述

  3. 添加环境变量,保证后续程序、终端等能正确找到cuda

    sudo vim ~/.bashrc
    

    在打开的配置文件文末添加如下配置信息并保存(将下面指令中的12.2换成你的cuda版本号)

    export PATH=/usr/local/cuda-12.2/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-12.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    export CUDA_HOME=/usr/local/cuda-12.2
    

    应用更改

    source ~/.bashrc
    sudo ldconfig
    nvcc -V
    

    有如下输出则说明cuda已经可以正常使用了
    在这里插入图片描述

相关文章:

  • 为 docker 拉取镜像配置代理
  • 【5G通信】通过RRC重配实现功率调整的可能性
  • 【Python内置函数的深度解析与应用】id
  • Dify - 整合Ollama + Xinference私有化部署Dify平台(01)
  • C++23 新特性静态operator[]、operator()与Lambda
  • 信号完整性:高速电路设计成功的关键
  • 本地git操作
  • 裂缝检测数据集,支持yolo,coco json,pasical voc xml,darknet格式的标注,1673张原始训练集图片,正确识别率99.4%
  • 趣说区块链隐私智能合约Shielder 实现原理
  • 基于【Lang Chain】构建智能问答系统的实战指南
  • 25.OpenCV中的霍夫圆变换
  • 【多线程-第四天-自己模拟SDWebImage的下载图片功能-看SDWebImage的Demo Objective-C语言】
  • #2 物联网组成要素
  • C# string和其他引用类型的区别
  • Linux下C语言与OpenGL游戏开发指南
  • 第十六天 - SaltStack高级功能 - 状态文件与Grains - 练习:异构环境配置管理
  • 【油猴脚本 0】某动漫网站视频地址解析
  • LabVIEW 控制电机需注意的关键问题
  • CSS 轮廓(Outline)属性学习笔记
  • Qt C++内存泄漏排查方法
  • 文化润疆|让新疆青少年成为“小小博物家”
  • 中介在网上非法贩婴“一个孩子8.5万元”?丹阳警方介入
  • 庆祝中华全国总工会成立100周年暨全国劳动模范和先进工作者表彰大会隆重举行,习近平发表重要讲话
  • 安阳一村支书微信群骂村民被警方行拘,辩称对方先“污蔑造谣”
  • 上海市委常委会传达学习总书记重要讲话精神,研究张江科学城建设等事项
  • 马上评|演唱会云集,上海如何把“流量”变“留量”