Ubuntu 对 CUDA 的支持并不取决于 Ubuntu 的特定版本号,而是取决于你安装的 NVIDIA 显卡驱动版本与 CUDA Toolkit 版本之间的兼容性。
简单来说:几乎所有较新的 Ubuntu 版本(18.04 LTS, 20.04 LTS, 22.04 LTS, 24.04 LTS)都支持 CUDA,但你需要根据你选择的 CUDA 版本去匹配对应的 Ubuntu 版本和驱动版本。
以下是详细的版本对应关系和选择建议:
1. 官方推荐的 LTS 版本
为了获得最稳定的支持,NVIDIA 官方通常优先保证以下长期支持版(LTS)的兼容性:
- Ubuntu 24.04 LTS (Noble Numbat): 最新推荐,支持最新的 CUDA 12.x 系列。
- Ubuntu 22.04 LTS (Jammy Jellyfish): 目前最主流的选择,广泛支持 CUDA 11.x 到 12.x。
- Ubuntu 20.04 LTS (Focal Fossa): 依然被许多旧项目使用,主要支持 CUDA 11.x 及以下。
- Ubuntu 18.04 LTS (Bionic Beaver): 较老,仅支持较旧的 CUDA 版本(如 10.x, 11.0),新项目不再推荐。
注意:虽然理论上可以在非 LTS 版本(如 23.10, 24.10)上安装 CUDA,但由于这些版本内核更新快且生命周期短,遇到依赖库冲突的风险较高,生产环境建议使用 LTS 版本。
2. CUDA 版本与 Ubuntu 版本的映射表
NVIDIA 官方文档会明确列出每个 CUDA Toolkit 版本支持的 Linux 发行版。以下是常见组合示例:
| CUDA Toolkit 版本 | 支持的 Ubuntu 版本 (推荐) | 备注 |
|---|---|---|
| CUDA 12.4 / 12.3 | Ubuntu 24.04, 22.04 | 需要较新的 GCC 编译器 (GCC 9+) |
| CUDA 12.1 / 12.2 | Ubuntu 24.04, 22.04, 20.04 | 当前主流深度学习框架常用 |
| CUDA 11.8 | Ubuntu 24.04, 22.04, 20.04, 18.04 | 兼容性极佳,很多旧项目首选 |
| CUDA 11.7 | Ubuntu 22.04, 20.04, 18.04 | |
| CUDA 11.6 | Ubuntu 22.04, 20.04, 18.04 | |
| CUDA 11.5 及更早 | Ubuntu 20.04, 18.04 | 部分旧版可能不支持 Ubuntu 22.04+ |
3. 如何确认你的系统是否支持?
如果你已经安装了某个 Ubuntu 版本,想确认能否运行特定的 CUDA 版本,请遵循以下步骤:
-
查看 NVIDIA 官方文档:
访问 NVIDIA CUDA Toolkit Archive,点击具体的 CUDA 版本,向下滚动找到 "Linux" 部分,里面会明确列出Supported Linux Distributions(例如:Ubuntu 22.04, 20.04)。 -
检查显卡驱动:
CUDA 的运行依赖于主机上的 NVIDIA 驱动程序。- 在终端输入
nvidia-smi。 - 如果显示驱动版本(例如 Driver Version: 535.104.05),你可以对照该驱动版本支持的 最高 CUDA 版本(通常在输出信息的右侧显示 "CUDA Version: 12.2")。
- 原则:你安装的 CUDA Toolkit 版本必须 小于或等于
nvidia-smi显示的 CUDA 版本。
- 在终端输入
4. 最佳实践建议
- 如果是新部署:建议直接使用 Ubuntu 22.04 LTS 或 24.04 LTS,并安装最新的稳定版 CUDA(如 12.3 或 12.4)。
- 如果是维护旧项目:如果项目代码强依赖旧版 CUDA(如 10.2 或 11.0),则应保留 Ubuntu 18.04 或 20.04。
- 避免混用:不要试图在 Ubuntu 24.04 上强行安装非常古老的 CUDA 10.0,这会导致大量的编译错误和依赖缺失问题。
总结:只要你是从 Ubuntu 18.04 LTS 及以上版本开始,并且正确下载了对应版本的 NVIDIA 驱动和 CUDA Toolkit,就能完美支持 CUDA。
云知识CLOUD