码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Ubuntu20.04+1080Ti通过docker进行NVIDIA GPU环境搭建


    目录

    • 一. 先决条件
    • 二. 安装docker
      • 2.1 安装并使能docker
      • 2.2 设置NVIDIA-docker库和GPG密钥
      • 2.3 安装NVIDIA其他包和依赖项
    • 三. 启动docker的pytorch镜像
    • 四. 总结

    一. 先决条件

    在开始之前,请确保您已经为您的 Linux 发行版安装了 NVIDIA 驱动程序。
    同时要满足:
    1.内核版本 > 3.10 的 GNU/Linux x86_64。

    2.Docker >= 19.03(推荐,但某些发行版可能包含旧版本的 Docker。支持的最低版本为 1.12)。

    3.架构 >= Kepler(或计算能力 3.0)的 NVIDIA GPU(即9系显卡及以上)。

    4.NVIDIA Linux 驱动程序>= 418.81.07(请注意,不支持较旧的驱动程序版本或分支。)。

    二. 安装docker

    2.1 安装并使能docker

    curl https://get.docker.com | sh \
      && sudo systemctl --now enable docker
    
    • 1
    • 2

    在这里插入图片描述

    2.2 设置NVIDIA-docker库和GPG密钥

    distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
          && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
          && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
                sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
                sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
    
    • 1
    • 2
    • 3
    • 4
    • 5

    不报错即为成功:
    在这里插入图片描述

    2.3 安装NVIDIA其他包和依赖项

    更新包列表后安装nvidia-docker2包(和依赖项):

    sudo apt-get update
    
    • 1
    sudo apt-get install -y nvidia-docker2
    
    • 1

    设置默认运行时后重启 Docker 守护进程完成安装:

    sudo systemctl restart docker
    
    • 1

    通过运行基本 CUDA 容器来测试工作设置:

    sudo docker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi
    
    • 1

    三. 启动docker的pytorch镜像

    sudo docker run --gpus all -it --rm -p 8888:8888 -v ~:/workspace \
    	--ipc=host --ulimit memlock=-1 --ulimit stack=67108864 \
    	nvcr.io/nvidia/pytorch:22.07-py3
    
    • 1
    • 2
    • 3

    大概需要下载6个G的包,下载完后会自动进入docker的环境中:
    在这里插入图片描述

    四. 总结

    1. docker也是相当于全家桶式的安装,一次大概6个GB的包比较占空间,定制化程度较弱。
    2. docker修改pytorch环境和版本需要重新下载镜像,非常不方便。
    3. docker本身对于从零开始的环境配置非常快捷,不需要自行安装NVIDIA驱动和CUDA。
    4. docker在长时运行后可能驱动会出问题,且需要备份docker。
    5. docker会带来一些指令级的额外开销。
    6. docker适合特别关注底层的性能和开发的群体。
    7. 如果是关心算法做开发,最好使用NVIDIA驱动+conda命令安装pytorch+CUDA的方式。这种方法的坏处也是磁盘占用率较高,且仅仅安装了CUDA运行环境,但cuda编译器并没有安装,有些包的kernel需要实时编译且依赖nvcc的则不适用,因此实际使用过程中兼容性可能出现问题。
  • 相关阅读:
    java计算机毕业设计医院门诊预约系统源程序+mysql+系统+lw文档+远程调试
    手写Spring-第九章-FactoryBean:我是工厂,也是Bean
    我国平台经济领域“二选一”现象的成因、影响及对策
    SpringCloud——服务拆分
    神经网络在故障诊断中的应用
    Redis从入门到精通(二)- 入门篇
    苹果IOS安装IPA, plist形式 Safari 浏览器点击安装
    Git_GitHub——基本操作、创建远程库、远程库操作、团队协作、SSH免密登录
    Spark写入支持更新【源码二次开发】
    关于el-date-picker点击清空参数变为null的问题
  • 原文地址:https://blog.csdn.net/m0_46339652/article/details/126701041
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | 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号