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

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

相关推荐
那个村的李富贵2 小时前
光影魔术师:CANN加速实时图像风格迁移,让每张照片秒变大师画作
人工智能·aigc·cann
腾讯云开发者3 小时前
“痛点”到“通点”!一份让 AI 真正落地产生真金白银的实战指南
人工智能
CareyWYR3 小时前
每周AI论文速递(260202-260206)
人工智能
hopsky4 小时前
大模型生成PPT的技术原理
人工智能
禁默5 小时前
打通 AI 与信号处理的“任督二脉”:Ascend SIP Boost 加速库深度实战
人工智能·信号处理·cann
心疼你的一切5 小时前
昇腾CANN实战落地:从智慧城市到AIGC,解锁五大行业AI应用的算力密码
数据仓库·人工智能·深度学习·aigc·智慧城市·cann
AI绘画哇哒哒5 小时前
【干货收藏】深度解析AI Agent框架:设计原理+主流选型+项目实操,一站式学习指南
人工智能·学习·ai·程序员·大模型·产品经理·转行
数据分析能量站5 小时前
Clawdbot(现名Moltbot)-现状分析
人工智能
那个村的李富贵5 小时前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
二十雨辰5 小时前
[python]-AI大模型
开发语言·人工智能·python