安装英伟达驱动
本文基于windows10+ubuntu22.04双系统,给ubuntu22.04安装英伟达驱动。
- 安装必要。依赖
shell
sudo apt update # 获取最新的软件包信息
sudo apt upgrade # 升级软件包
sudo apt install g++
sudo apt install gcc
sudo apt install make
- 禁用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
- 卸载之前安装的英伟达驱动。
shell
sudo apt remove --purge nvidia*
- 查看系统检测到的显卡以及推荐的驱动程序版本。
通常会显示多个可用的驱动版本,有些版本可能带有 "recommended"(推荐)的标识。
shell
ubuntu-drivers devices
# 可以看到推荐的驱动是nvidia-driver-560
- 使用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
- 重启后,验证是否安装成功。
shell
# 重启
reboot
# **注意**
重启后会出现蓝屏,蓝屏界面选择Enroll MOK, 确认后再选择Continue,接着输入刚刚安装驱动时设置的密码,输入时密码不会显示,确认后等待开机。
# 验证,如果显示你的系统GPU,即安装成功。如图,NVIDIA GeForce GTX 1050 Ti
nvidia-smi
部署Pytorch环境
miniconda 中部署 Pytorch环境
- 安装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
- 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`。
- 创建python3.10的虚拟环境。
shell
conda create -n pytorch-cuda12.1 python=3.10
conda activate pytorch-cuda12.1
python -V
pip -V
- 虚拟环境中安装pytorch。
shell
pip3 install torch torchvision torchaudio
- 安装Jupyter。
shell
pip install jupyter
jupyter notebook
# 浏览器打开 http://localhost:8888/tree?token=72855bd2a120e2ac671c7ffc0a13eaee1d9d059d5e5647e3
- 测试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())
参考文档
欢迎关注我的博客,如有疑问或建议,请随时留言讨论。