Skip to content

环境深度学习安装

前置条件

需要计算机配备 NVIDIA 显卡,并支持现代 CUDA 版本。内存大于 16GB,推荐 32GB 以上。

1. 安装 Ubuntu 系统

安装 Ubuntu 桌面版本(如 Ubuntu 22.04 LTS),此过程可参考网络上的教程,如何烧录 U 盘安装 Ubuntu 系统。

2. 安装驱动程序

2.1 自动安装

可使用推荐安装方法,首先需要安装显卡驱动,可使用 Ubuntu 软件和更新工具安装,点击附加驱动(Additional Drivers),选择最新的稳定驱动版本,如 nvidia-driver-545

或者使用命令行安装:

bash
sudo ubuntu-drivers install

安装后重启,使用 nvidia-smi 命令查看显卡信息:

bash
nvidia-smi

输出示例:

txt
Fri Jul  5 10:54:59 2024
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.183.01             Driver Version: 535.183.01   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  NVIDIA GeForce RTX 4090        Off | 00000000:04:00.0 Off |                  Off |
|  0%   33C    P8               6W / 450W |   2799MiB / 24564MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      1370      G   /usr/lib/xorg/Xorg                            9MiB |
|    0   N/A  N/A      1557      G   /usr/bin/gnome-shell                         10MiB |
|    0   N/A  N/A     21115      C   python                                     2762MiB |
+---------------------------------------------------------------------------------------+

如果之前安装错误,可卸载驱动:

bash
sudo nvidia-uninstall

2.2 手动安装

禁用 Nouveau 驱动

在安装驱动之前需要禁用 Nouveau 驱动,可以通过下面的命令检查当前系统是否正在使用 Nouveau 驱动:

bash
lspci | grep nouveau

编辑文件 /etc/modprobe.d/blacklist.conf,如果没有则创建,末尾加入两行:

properties
blacklist nouveau
options nouveau modeset=0

更新配置,然后重启:

bash
sudo update-initramfs -u
sudo reboot

重启后检查 Nouveau 驱动是否被禁用:

bash
lspci | grep nouveau

如果没有内容则正常。

从 NVIDIA 官网下载安装

访问驱动下载的官方网站:https://www.nvidia.com/en-us/drivers/,然后选择你的显卡。

配置项配置示例值
产品类型GeForce
产品系列GeForce RTX 40 Series
产品家族NVIDIA GeForce RTX 4090
操作系统Linux 64-bit
下载类型生产分支生
语言English (US)

点击搜索,同意协议后自动下载。

下载后运行即可:

bash
sudo bash ./NVIDIA-Linux-x86_64-xxx.xx.xx.run

安装时可以选择自动配置 Xorg,安装完成后检查驱动是否加载:

bash
nvidia-smi

其中 CUDA Version: xx.x 表示你可运行的最高版本的 CUDA。

3. 安装 Docker

使用官方地址:

bash
curl -fsSL https://get.docker.com | bash -s docker

使用阿里云镜像:

bash
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

如果无法访问 Docker 官网,可以使用本人提供的镜像地址:

bash
curl -fsSL https://files.alexsun.top/install-docker.sh | bash -s docker --mirror Aliyun

也可以使用清华镜像:

bash
export DOWNLOAD_URL="https://mirrors.tuna.tsinghua.edu.cn/docker-ce"
curl -fsSL https://get.docker.com | bash -s docker

配置权限,使得普通用户可以使用 Docker 命令:

bash
sudo sed -i s/SocketMode=0660/SocketMode=0666/g /usr/lib/systemd/system/docker.socket
sudo systemctl daemon-reload
sudo systemctl restart docker.socket

4. 安装 nvidia-container-toolkit

官方文档

安装步骤可参考 官方文档

NVIDIA GPU 对 Docker 的第一代支持 nvidia-docker 和第二代支持 nvidia-docker2 已经全部过时,现在使用 nvidia-container-toolkit 来提供更加原生的 Docker GPU 体验,无需使用 --runtime 参数来调用运行时。

添加 GPG 密钥:

bash
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

安装:

bash
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker

下面可以通过 --gpus all 参数来启动 Docker 容器,自动挂载 GPU 设备。