在Ubuntu上进行深度学习时,推荐以下版本和内核配置,以兼顾稳定性、兼容性和性能:
1. Ubuntu 版本推荐
- Ubuntu 22.04 LTS(长期支持版)
- 理由:
- 官方支持到2027年,稳定性高,社区和厂商支持完善。
- 默认包含较新的软件包(如Python 3.10、GCC 11),兼容主流深度学习框架(TensorFlow/PyTorch)。
- 对NVIDIA GPU驱动支持较好(尤其是CUDA Toolkit的最新版本)。
- 替代选项:
- Ubuntu 20.04 LTS:如果需兼容旧硬件或企业级环境(支持到2025年)。
- Ubuntu 23.10(非LTS):如需最新特性,但稳定性可能略低。
2. 内核版本推荐
- 默认内核(5.15 LTS)
- Ubuntu 22.04默认内核,经过充分测试,适合大多数场景。
- 升级到新版内核(如6.2+)的情况:
- 优势:
- 对新硬件(如Intel 13代/AMD 7000系CPU、NVIDIA 40系GPU)支持更好。
- 改进的调度和电源管理(对多GPU训练可能有帮助)。
- 方法:
sudo apt install linux-image-generic-hwe-22.04 # 安装HWE(Hardware Enablement)内核 - 注意:
- 测试内核与NVIDIA驱动的兼容性(尤其是
dkms驱动)。
3. 关键组件版本
- NVIDIA驱动与CUDA:
- 驱动版本:≥525.85.12(推荐使用官方驱动或通过
ubuntu-drivers自动安装)。 - CUDA Toolkit:12.x(最新框架支持)或11.8(稳定兼容)。
- 驱动版本:≥525.85.12(推荐使用官方驱动或通过
- Python环境:
- 推荐Miniconda/Anaconda管理虚拟环境,避免系统Python冲突。
4. 其他优化建议
- 禁用Wayland(使用X11):
- NVIDIA驱动在X11下更稳定:
sudo nano /etc/gdm3/custom.conf # 取消`WaylandEnable=false`的注释
- NVIDIA驱动在X11下更稳定:
- 调整Swappiness:
- 减少内存交换,提升性能:
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
- 减少内存交换,提升性能:
总结配置
- 推荐组合:
- Ubuntu 22.04 LTS + 内核5.15(默认)或6.2+(新硬件) + NVIDIA驱动525+ + CUDA 12.x
- 适用场景:
- 学术研究/生产环境:优先LTS版本。
- 前沿硬件/实验需求:考虑新版内核和CUDA。
如有特定硬件(如AMD GPU或边缘设备),需进一步调整驱动和框架选择。
云服务器