码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • CUDA+cuDNN+TensorRT 配置避坑指南


    如果想自己折腾环境,建议阅读本文档。

    如果不想折腾环境,建议docker一步到位,不必阅读此文。传送门:Docker overview | Docker DocsGet an in-depth overview of the Docker platform including what it can be used for, the architecture it employs, and its underlying technology.icon-default.png?t=N7T8https://docs.docker.com/get-started/overview/ 英伟达容器库 Data Science, Machine Learning, AI, HPC Containers | NVIDIA NGCContainers for PyTorch, TensorFlow, ETL, AI Training, and Inference. Tuned, tested and optimized by NVIDIA.icon-default.png?t=N7T8https://catalog.ngc.nvidia.com/containers

            深度学习模型加速部署的环境配置,需要在本地安装NVIDIA的一些工具链和软件包,这是一个些许繁琐的过程,而且一步错,步步错。笔者将会根据自己的经验来提供建议,减少踩坑几率。当然可以完全按照官方教程操作,但是本人也发现一些问题,下面会说到。官方教程:Installation Guide :: NVIDIA Deep Learning TensorRT Documentation

    笔者的PC配置信息为:ubuntu22.04 + 1650

    下面将会从cuda driver驱动安装说起,各个步骤的注意事项和技巧。

    1.驱动安装

            对于显卡驱动安装,网上的教程五花八门,大部分教程都是手动安装,原因是比较稳定。但并不总是如此。nvidia官方推荐的是通过系统自带的软件更新器安装,因此推荐使用这种简单的方法,效果一样。

            当然通过自带的软件更新器安装也可以通过命令行进行。

            首先检查驱动:ubuntu-drivers devices 

            效果和上图一样

            然后安装驱动 (建议安装带recommanded) :sudo apt-get install nvidia-driver-xxx(替换成自己的)

            然后重启 reboot

            查看显卡驱动安装情况:nvidia-smi

            可以看见驱动版本号525.125,CUDA版本号12.0。第一个坑:

            此处需要注意,此处的CUDA Version意思是最大支持的cuda版本,等会实际安装的cuda toolkit可能会小于这个版本,但下载的时候仍然需要按照此处的版本为标准,而不是toolkit的版本。对于笔者,后续也就是12.0,切记。

            至此,驱动安装结束。

    2.cuda toolkit安装

            cuda toolkit安装需要按照官方指定的对应驱动版本下载。CUDA 12.2 Release Notes — cuda-toolkit-release-notes 12.2 documentation

            笔者驱动为525.125,因此选择第一个进行下载(从我的驱动信息同样说明,笔者的cuda最高支持版本为12.0,刚好与其对应)。各位根据自己的版本下载,官方链接:                           CUDA Toolkit Archive | NVIDIA Developer

            进行完上面的操作之后,还需要手动安装nvcc        

            sudo apt install nvidia-cuda-toolkit

            安装可能失败,提示需要安装其他的XXX依赖包,

            只需要根据提示操作:sudo apt-get install XXX   

            安装结束,验证:nvcc -V

            查看cuda toolkit版本  

            此处,第二个坑,本站有帖子说此处显示的为cuda版本,也就是11.5。但通过笔者的实践操作,这是不对的,接下来如果按照这个版本去安装cudNN和tensorRT会导致失败,笔者已经通过不同的方式验证了其失败的情况。我已经删除一些我下过的deb包了,因为太占空间,下面是我还没来得及删除的。因此cuda版本请参考第一条,驱动安装,以那里为准。NVIDIA官方在教程里并为明确说明,因此这是一个坑。

    3.cuDNN安装

            nvcc安装结束,开始安装cuDNN。首先从中文官网下载匹配的deb包,选择对应版本。CUDA 深度神经网络库 (cuDNN) | NVIDIA 开发者

            此时会发现cn网站不提供下载,也是醉了。

            被迫转到CUDA Deep Neural Network (cuDNN) | NVIDIA Developer英文官网下载,而且需要注册账号,没办法。登陆之后,你有两个下载选择。

            上文已经讲到,一切以第一小节里的cuda version信息为准。笔者为cuda为12.0因此选择第一个。同样选择对应平台版本下载即可。

            下载完成之后进行安装:sudo dpkg -i xxx.deb

            安装完成之后继续执行:

    sudo cp /var/cudnn-local-repo-*/cudnn-local-*-keyring.gpg /usr/share/keyrings/

    sudo apt-get update

            接下来是第三个坑,官方文档里需要继续安装三个软件包,但是按照官方的提示是无法安装的,如下图,红色的是上面两个已经执行的命令,绿色的是接下来要执行的命令。分别是安装三个软件包。

            然而,这三个软件包是放在系统的:/var/cudnn-local-repo-ubuntu目录下

            进入该目录直接sudo dpkg -i xxx.deb安装即可。

            安装完成之后,进行验证,直接按照官方的verify方法即可:Installation Guide - NVIDIA Docs

    最后输出test passed即可。

    4.tensorRT安装

            官网下载Log in | NVIDIA Developer,找到自己的cuda版本和平台。官方安装步骤Installation Guide :: NVIDIA Deep Learning TensorRT Documentation

            安装下载的deb包,根据提示操作。

            最后测试是否成功:dpkg -l | grep TensorRT

            输出如下:

  • 相关阅读:
    线程的并行、并发、生命周期
    【Linux】Ubuntu存储分析
    什么是运放的虚短和虚断
    职场小白必学,pdf提取图片技巧分享,快来码住
    C专家编程 第6章 运行的诗章:运行时数据结构 6.5 当函数被调用时发生了什么:过程活动记录
    Python的GIL存在的情况下,是否还有必要添加线程锁。
    微信小程序合集更更更之实现自定义tabbar凹起效果
    问题记录:两台Ubuntu之间传输文件(SCP)
    Discourse 在 2022-11 的最新版本中提供了新的边栏
    磁盘怎么分区?3 款最佳免费磁盘分区软件
  • 原文地址:https://blog.csdn.net/weixin_43249548/article/details/133563043
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号