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

[自记录]一次Nvidia显卡的AI容器基础镜像制作过程(含Torch版本和ONNXRuntime版本选择)

1 宿主机情况

+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.161.07             Driver Version: 535.161.07   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  Tesla V100S-PCIE-32GB          Off | 00000000:00:0D.0 Off |                    0 |
| N/A   28C    P0              37W / 250W |  15572MiB / 32768MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

2 制作镜像

  • 基础镜像
docker run --gpus=all --rm -it nvidia/cuda:12.2.2-base-ubuntu22.04
apt install python3 python3-pip
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

默认apt按照的python版本为3.10.12。

  • torch版本选择

torch版本建议在torch官网下载,不建议pip安装

torch 2.5.1+cu121

torchaudio 2.5.1+cu121

  • onnxruntime选择
pip install onnxruntime-gpu[cuda,cudnn]==1.21.1

onnxruntime版本兼容性检查
如果用较低版本的torch,还需要关注cuDNN的版本不要冲突。
在这里插入图片描述

3 结果展示

$ python3
Python 3.10.12 (main, Feb  4 2025, 14:57:36) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> print(torch.__version__)
2.5.1+cu121
>>> print(torch.version.cuda)
12.1
>>> print(torch.backends.cudnn.version())
90100

即实际运行依赖的cuda版本12.1(不能高于宿主机但最好接近),cudnn版本9.01

http://www.dtcms.com/a/154482.html

相关文章:

  • 【阿里云大模型高级工程师ACP习题集】2.5 优化RAG应用提升问答准确度(⭐️⭐️⭐️ 重点章节!!!)
  • 全栈开发的未来:低代码与AI辅助编程的边界探索
  • Python爬虫(4)CSS核心机制:全面解析选择器分类、用法与实战应用
  • 遥感金融风险监管:技术革新与实践探索
  • 不同ECU(MCU/ZCU/CCU)其部署(实现)的功能存在差异
  • 别让算力掉队:AI架构里被忽视的关键一环
  • 测试基础笔记第十二天
  • 安全性测试常规测试点全解析:从基础到高级的实战指南
  • 代理ip和实际ip的区别和联系
  • 一款好用的桌面待办工具,轻松掌控时间沙漏!
  • AiFlutter 低代码平台介绍
  • Linux软硬链接和动静态库(20)
  • 一文带你掌握java的stream流
  • ADVB协议同步
  • 【c++11】c++11新特性(下)(可变参数模板、default和delete、容器新设定、包装器)
  • 学习AI必知的20大概念
  • Gemini 2.5 Pro代码实测:它能抢程序员饭碗了吗?
  • c++11 :智能指针
  • 软考【网络工程师】2023年11月上午题答案解析
  • 图像预处理-图像亮度变换
  • VRRP与防火墙双机热备实验
  • 如何优化字符串替换:四种实现方案对比与性能分析
  • Web 服务架构与技术组件概述
  • 一个非常快速的 Latex 入门教程【Part 1】
  • 你怎么通过postman或者fidder或者JMeter来获取到token,然后后面的请求怎么使用token
  • 【金仓数据库征文】金仓数据库:国产化浪潮下的技术突破与行业实践
  • PowerShell 查询及刷新环境变量
  • 一种用于加密代理流量检测的轻量级深度学习方法
  • C语言数据类型全面解析:从入门到精通
  • 详解 LeetCode 第 242 题 - 有效的字母组