在 Ubuntu 22.04 中安装 CUDA
介绍,如何直接导入 Nvidia 官方 APT 软件源和 GPG 密钥,在 Ubuntu 22.04 LTS 中安装 CUDA 的详细步骤。这样可以确保拥有最新的 Nvidia 驱动程序和 CUDA Toolkit,也方便未来的版本更新。
在高性能计算领域,CUDA(Compute Unified Device Architecture)是一项革命性的技术。它由 Nvidia 开发,是一个并行计算平台和应用程序编程接口(API)模型,利用 NVIDIA GPU(图形处理器)的强大计算能力来提高软件应用程序的计算速度和效率。
CUDA 对 Ubuntu 用户、程序员和开发者的重要性主要包括:
性能增强
:CUDA 让程序能够在 Nvidia 的 GPU上执行,这些 GPU 能够同时处理多任务。这种并行处理能力可以显著提升应用程序的速度,尤其是需要进行大量计算的应用程序。多功能性
:CUDA 支持多种编程语言,包括 C、C++、Python 和 Fortran。您可以使用喜欢的语言来充分利用 GPU 加速计算能力。应用广泛
:CUDA 不仅适用于图形密集型应用程序,还广泛应用于数据分析、科学计算、机器学习、深度学习等领域。如果您从事这些领域的工作,CUDA 可能会改变您的工作方式。社区和资源
:Nvidia 为 CUDA 开发人员提供全面的支持,包括详尽的文档、教程以及充满活力的用户和专家社区,让解决问题和学习最佳实践更加容易。
推荐直接从 Nvidia 官方软件源安装最新 CUDA 版本,以下是主要原因:
- 获取最新功能:Nvidia 会持续更新 CUDA 版本,以添加新功能、改进功能和修复错误。安装最新版本可以充分享受这些改进带来的好处。
- 兼容性:较新的 CUDA 版本能够支持最新的 GPU。如果您使用最新的 Nvidia GPU,可能会要求最新的 CUDA 版本。
- 便捷更新:通过导入 Nvidia 官方 APT 软件源和 GPG 密钥,可以轻松使用 APT 软件包管理器获取未来的更新,可以避免手动下载和安装 CUDA 更新。
步骤 1:清除 Ubuntu 中已有的 CUDA 和 Nvidia
清除 Nvidia 软件包
sudo apt-get autoremove cuda* nvidia* --purge
卸载 .run 文件安装的 Nvidia 驱动程序
sudo /usr/bin/nvidia-uninstall
卸载通过 .run 文件安装的 CUDA Toolkit
sudo /usr/local/cuda-X.Y/bin/cuda-uninstall
步骤 2:在 Ubuntu 中安装 CUDA
准备 Ubuntu 系统
sudo apt-get install dirmngr ca-certificates software-properties-common apt-transport-https dkms curl -y
导入 Nvidia 软件源 GPG 密钥
curl -fSsL https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub | sudo gpg --dearmor | sudo tee /usr/share/keyrings/nvidia-drivers.gpg > /dev/null 2>&1
将 Nvidia 软件源添加到 Ubuntu 系统
echo 'deb [signed-by=/usr/share/keyrings/nvidia-drivers.gpg] https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /' | sudo tee /etc/apt/sources.list.d/nvidia-drivers.list
刷新软件包列表
sudo apt-get update
安装 CUDA 和 Nvidia 驱动程序
apt search cuda-drivers
sudo apt-get install nvidia-driver-535 cuda-drivers-535 cuda
sudo reboot
步骤 3:在 Ubuntu 中使用 CUDA
了解您的 GPU 功能
在开始学习 CUDA 编程之前,了解您的 GPU 功能非常重要。不同的 GPU 支持不同版本的 CUDA,并且具有不同的核心数、显存大小和其他特性。
nvidia-smi
该命令可以输出 GPU 的名称、总显存、CUDA 版本等信息。
熟悉 CUDA Toolkit 文档
CUDA Toolkit 提供了丰富的文档,包括编程指南、最佳实践指南和 API 参考。熟悉这些资源大有好处,您可以在线访问 NVIDIA CUDA Toolkit 文档页面获取这些文档。
使用 CUDA 示例
CUDA Toolkit 中包含一系列示例程序,展示了 CUDA 编程从基本概念到高级技巧的各个方面。这些示例可以作为很好的学习资源。在安装 CUDA Toolkit 后,可以在/usr/local/cuda/samples
目录中找到它们。
探索 CUDA 库
CUDA 提供了多个库,用于处理常见的计算任务,如线性代数、傅里叶变换等。这些库包括 cuBLAS、cuFFT 和 cuDNN 等,它们经过高度优化,能够节省大量的时间和精力。您可以在 CUDA Toolkit 的文档中找到关于这些库的更多信息。
调试和分析 CUDA 程序
调试和分析是 CUDA 编程的关键方面。CUDA Toolkit 中的 cuda-gdb 和 nvprof 等工具可以帮助您调试 CUDA 程序并分析其性能。这些工具在优化 CUDA 程序方面非常有用。