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

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

相关推荐
岁月如歌,青春不败5 分钟前
R语言森林生态系统结构、功能与稳定性分析与可视化
开发语言·人工智能·python·深度学习·r语言
久笙&1 小时前
高效设计AI Prompt:10大框架详细对比与应用
人工智能·prompt
yuanlulu1 小时前
mindie推理大语言模型问题及解决方法汇总
人工智能·华为·自然语言处理·nlp·大语言模型·昇腾
学术会议1 小时前
【智慧光学与高效信号处理】2025年信号处理与光学工程国际会议 (SPOE 2024)
大数据·人工智能·物联网·安全·信号处理
爱研究的小牛1 小时前
Midjourney技术浅析(一)
人工智能·深度学习·aigc·midjourney
qq_273900231 小时前
PyTorch Lightning Callback介绍
人工智能·pytorch·python
mingo_敏1 小时前
深度学习中的并行策略概述:4 Tensor Parallelism
人工智能·深度学习
红色的山茶花2 小时前
YOLOv9-0.1部分代码阅读笔记-train.py
笔记·深度学习·yolo
cxr8282 小时前
洪水灾害多智能体分布式模拟示例代码
深度学习·机器学习·迁移学习
敲代码敲到头发茂密2 小时前
基于 LangChain 实现数据库问答机器人
数据库·人工智能·语言模型·langchain·机器人