Ubuntu22.04中安装英伟达驱动并部署Pytorch深度学习环境

安装英伟达驱动

本文基于windows10+ubuntu22.04双系统,给ubuntu22.04安装英伟达驱动。

  1. 安装必要。依赖
shell 复制代码
sudo apt update  # 获取最新的软件包信息
sudo apt upgrade # 升级软件包
sudo apt install g++
sudo apt install gcc
sudo apt install make
  1. 禁用ubuntu默认驱动Nouveau。

ubuntu默认集成 Nouveau 驱动,能够提供基本的支持。我们现在需要安装 NVIDIA 官方的显卡驱动,就得先禁用默认驱动。

shell 复制代码
sudo vi /etc/modprobe.d/blacklist-nouveau.conf
# 插入下两行内容
blacklist nouveau
options nouveau modeset=0

# 禁用默认驱动生效
sudo update-initramfs -u

# 重启
sudo reboot

# 验证,果没有输出,则说明默认驱动已被成功禁用。
lsmod | grep nouveau
  1. 卸载之前安装的英伟达驱动。
shell 复制代码
sudo apt remove --purge nvidia*
  1. 查看系统检测到的显卡以及推荐的驱动程序版本。

通常会显示多个可用的驱动版本,有些版本可能带有 "recommended"(推荐)的标识。

shell 复制代码
ubuntu-drivers devices

# 可以看到推荐的驱动是nvidia-driver-560
  1. 使用PPA源安装推荐的英伟达驱动。

PPA(Personal Package Archive)库安装驱动是一种在 Ubuntu 等基于 Debian 的 Linux 系统中安装特定驱动程序的方法。

它允许用户方便地获取一些官方软件源之外的软件包及其特定版本。对于驱动程序来说,官方的 Ubuntu 软件源中可能提供的驱动版本有限,而 PPA 库可以提供更多更新或特定版本的驱动程序。

shell 复制代码
# 将图形驱动程序的 PPA 仓库添加到系统中,以便能够从该仓库获取 NVIDIA 驱动程序。
sudo add-apt-repository ppa:graphics-drivers/ppa

# 更新软件列表
sudo apt update

# 驱动改成自己系统刚刚推荐的版本,安装过程中提示设置密码,后面重启时需要用到。
sudo apt install nvidia-driver-560

# 安装 Mesa 相关的开发文档、头文件以及特定的 OpenGL 扩展规范等内容,以便开发者进行与图形相关的应用程序开发
sudo apt install mesa-common-dev
  1. 重启后,验证是否安装成功。
shell 复制代码
# 重启
reboot

# **注意**
重启后会出现蓝屏,蓝屏界面选择Enroll MOK, 确认后再选择Continue,接着输入刚刚安装驱动时设置的密码,输入时密码不会显示,确认后等待开机。

# 验证,如果显示你的系统GPU,即安装成功。如图,NVIDIA GeForce GTX 1050 Ti
nvidia-smi

部署Pytorch环境

miniconda 中部署 Pytorch环境

  1. 安装miniconda,最新版本请参考miniconda官网
shell 复制代码
# 这四个命令下载最新的 64 位版本的 Linux 安装程序,将其重命名为更短的文件名,静默安装,然后删除安装程序:
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm ~/miniconda3/miniconda.sh

# 安装后,关闭并重新打开终端应用程序或通过运行以下命令刷新它:(可以看到用户名前多个(base))
source miniconda3/bin/activate

# 在所有可用的 shell 上初始化 conda,请运行以下命令:
conda init --all
  1. cuda driver | pytorch | python 版本选择

上文的nvidia-smi输出可以看到我们安装的英伟达驱动中 Cuda Version:12.6,确保运行环境的cuda版本≤12.6。

pytorch官网中选择CUDA12.1,并且使用pip 的安装方式来安装pytorch。

torch与python版本对应表中可以看到``torch=2.4要求python3.8---3.12,所以我们可以选择python3.10`。

  1. 创建python3.10的虚拟环境。
shell 复制代码
conda create -n pytorch-cuda12.1 python=3.10 
conda activate pytorch-cuda12.1
python -V
pip -V
  1. 虚拟环境中安装pytorch。
shell 复制代码
pip3 install torch torchvision torchaudio
  1. 安装Jupyter。
shell 复制代码
pip install jupyter
jupyter notebook

# 浏览器打开 http://localhost:8888/tree?token=72855bd2a120e2ac671c7ffc0a13eaee1d9d059d5e5647e3
  1. 测试pytorch。

Jupyter中使用下列代码验证pytorch,输出结果如下图所示即通过。

python 复制代码
import torch
print(torch.cuda.is_available())
print(torch.__version__)
print(torch.__path__)
print(torch.version.cuda)
torch.backends.cudnn.version()

# GPU
x = torch.randn(1, 3, 224, 224).cuda()
conv = torch.nn.Conv2d(3, 3, 3).cuda()

out = conv(x)
print(out.sum())

参考文档

  1. Ubuntu20.04安装Nvidia显卡驱动教程
  2. Pytorch深度学习环境配置 | NVIDIA-driver + Pytorch + miniconda

欢迎关注我的博客,如有疑问或建议,请随时留言讨论。

相关推荐
NAGNIP8 小时前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
冬奇Lab9 小时前
一天一个开源项目(第36篇):EverMemOS - 跨 LLM 与平台的长时记忆 OS,让 Agent 会记忆更会推理
人工智能·开源·资讯
冬奇Lab9 小时前
OpenClaw 源码深度解析(一):Gateway——为什么需要一个"中枢"
人工智能·开源·源码阅读
AngelPP13 小时前
OpenClaw 架构深度解析:如何把 AI 助手搬到你的个人设备上
人工智能
宅小年13 小时前
Claude Code 换成了Kimi K2.5后,我再也回不去了
人工智能·ai编程·claude
九狼14 小时前
Flutter URL Scheme 跨平台跳转
人工智能·flutter·github
ZFSS14 小时前
Kimi Chat Completion API 申请及使用
前端·人工智能
天翼云开发者社区15 小时前
春节复工福利就位!天翼云息壤2500万Tokens免费送,全品类大模型一键畅玩!
人工智能·算力服务·息壤
知识浅谈15 小时前
教你如何用 Gemini 将课本图片一键转为精美 PPT
人工智能
Ray Liang15 小时前
被低估的量化版模型,小身材也能干大事
人工智能·ai·ai助手·mindx