经常要在Ubuntu上配置CUDA的运行环境,这里记录下避免之后忘记。
在 Ubuntu 上配置 CUDA 环境,通常需要以下几个步骤:
- 检查系统需求和安装前的准备
- 安装 NVIDIA 驱动
- 安装 CUDA 工具包
- 配置环境变量
- 验证 CUDA 安装
- (可选)安装 cuDNN(用于深度学习)
1. 检查系统需求和准备工作
在安装 CUDA 之前,确保以下事项:
- 你使用的 Ubuntu 版本支持 CUDA。可以查看 NVIDIA CUDA 官方文档 获取兼容的操作系统列表。
- NVIDIA 显卡支持 CUDA(一般来说,较新的 NVIDIA 显卡都支持)。
建议你先删除任何旧版本的驱动程序或 CUDA 软件包,以避免冲突:
bash
sudo apt-get --purge remove "*nvidia*"
2. 安装 NVIDIA 驱动
你可以使用 Ubuntu 的包管理器来自动安装适合的 NVIDIA 驱动。
-
首先,更新系统软件包:
bashsudo apt update sudo apt upgrade
-
启用 Ubuntu 的驱动程序仓库:
bashsudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update
-
检查可用的 NVIDIA 驱动:
bashubuntu-drivers devices
这将列出系统支持的 NVIDIA 驱动版本。
-
安装推荐的 NVIDIA 驱动程序(例如
nvidia-driver-xxx
,其中xxx
是版本号):bashsudo apt install nvidia-driver-xxx
例如,如果推荐安装
nvidia-driver-470
,则命令为:bashsudo apt install nvidia-driver-470
安装完成后,重新启动计算机:
bash
sudo reboot
3. 安装 CUDA 工具包
-
下载 CUDA 工具包 :访问 NVIDIA CUDA Toolkit 下载页面,选择你的 Ubuntu 版本并复制对应的安装命令。以 CUDA 12.0 为例,使用以下步骤:
-
添加 CUDA 存储库和 GPG 密钥: 根据官网提供的命令,运行以下命令来添加 CUDA 存储库:
bashwget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
添加 GPG 密钥:
bashsudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub
-
安装 CUDA: 安装完 GPG 密钥后,添加 CUDA 存储库并安装 CUDA 工具包:
bashsudo apt update sudo apt install cuda
-
重启系统: 安装完成后,重新启动系统:
bashsudo reboot
4. 配置环境变量
为了让系统可以找到 CUDA 工具和库,需要配置环境变量。
-
打开终端,编辑
.bashrc
文件:bashnano ~/.bashrc
-
在文件的末尾添加以下几行(请根据实际安装路径调整,通常路径是
/usr/local/cuda-<version>
):bashexport PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
-
保存并关闭文件,然后使更改生效:
bashsource ~/.bashrc
5. 验证 CUDA 安装
-
检查 CUDA 版本: 使用以下命令来验证 CUDA 是否安装成功:
bashnvcc --version
你应该看到类似以下的输出,显示 CUDA 版本信息:
cssnvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2023 NVIDIA Corporation Built on Thu_May_25_19:08:35_PDT_2023 Cuda compilation tools, release 12.0, V12.0.194
-
运行示例代码: CUDA 工具包中通常包含示例代码,可以使用这些示例来测试是否成功安装。
先导航到 CUDA 安装目录的示例文件夹:
bashcd /usr/local/cuda/samples/1_Utilities/deviceQuery
然后编译并运行
deviceQuery
:bashsudo make ./deviceQuery
如果输出显示 GPU 设备的详细信息,说明安装成功。
示例输出:
css./deviceQuery Starting... CUDA Device Query (Runtime API) version (CUDART static linking) Detected 1 CUDA Capable device(s) Device 0: "GeForce GTX 1050" CUDA Driver Version / Runtime Version 11.0 / 11.0 Total amount of global memory: 4041 MBytes (4235358208 bytes) (6) Multiprocessors, (128) CUDA Cores/MP: 768 CUDA Cores
6. (可选)安装 cuDNN
cuDNN 是 NVIDIA 的深度学习加速库。如果你计划在 GPU 上运行深度学习框架(如 TensorFlow、PyTorch),建议安装 cuDNN。
-
下载 cuDNN : 从 NVIDIA 官网 cuDNN 下载页面 下载与你的 CUDA 版本匹配的 cuDNN。
-
解压并安装 : 下载的文件是
.tar
格式。解压后,将 cuDNN 文件复制到 CUDA 目录中:bashtar -xzvf cudnn-<version>-linux-x64-v<version>.tgz sudo cp cuda/include/cudnn*.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
-
验证 cuDNN 安装: 检查 cuDNN 版本:
bashcat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
如果输出了版本号,说明 cuDNN 安装成功。
总结
- 安装 NVIDIA 驱动:确保显卡驱动正确安装。
- 安装 CUDA 工具包:下载并配置好 CUDA 工具包。
- 配置环境变量 :设置 CUDA 的
PATH
和LD_LIBRARY_PATH
。 - 验证安装 :使用
nvcc
和示例代码来验证安装是否成功。