返回知识库
一、GPU选型指南
1.1 主流GPU对比
| 型号 |
显存 |
显存带宽 |
Tensor Core |
适用场景 |
| NVIDIA A100 |
40GB/80GB |
2039 GB/s |
第三代 |
大模型训练、HPC |
| NVIDIA H100 |
80GB |
3350 GB/s |
第四代 |
超大规模AI训练 |
| NVIDIA A10 |
24GB |
600 GB/s |
第三代 |
推理、图形工作站 |
| NVIDIA RTX 4090 |
24GB |
1008 GB/s |
第四代 |
中小模型训练、推理 |
| NVIDIA L40S |
48GB |
864 GB/s |
第四代 |
推理、微调、图形 |
1.2 选型建议
选型原则:根据模型规模、训练/推理场景、预算综合考量
- 大模型训练(>100B参数):推荐 A100/H100,显存越大越好,多卡并行
- 中小模型训练(<10B参数):RTX 4090 性价比高,A10 适合企业级部署
- 推理服务:A10、L40S 性价比高,支持多实例并发
- 开发测试:RTX 3090/4090 单卡即可满足大部分需求
二、服务器硬件配置
2.1 CPU配置
- 推荐:Intel Xeon 或 AMD EPYC 系列
- 核心数:每块GPU建议配置 8-16 核 CPU
- 内存:每块GPU配置 64-128GB 系统内存
- PCIe:确保支持 PCIe 4.0 x16,保证GPU带宽
2.2 存储配置
| 存储类型 |
推荐容量 |
用途 |
| 系统盘(SSD) |
500GB-1TB |
操作系统、软件安装 |
| 数据盘(NVMe SSD) |
2TB-8TB |
数据集、模型文件 |
| 高速缓存(可选) |
根据需求 |
训练数据缓存 |
2.3 网络配置
- 管理网络:千兆以太网即可
- 数据网络:建议万兆(10GbE)或更高
- 多机训练:需要 InfiniBand 或 100GbE RDMA 网络
三、软件环境配置
3.1 操作系统选择
- 推荐:Ubuntu 20.04/22.04 LTS
- 备选:CentOS 7/8、Rocky Linux
- 注意:确保内核版本支持 GPU 驱动
3.2 NVIDIA驱动安装
注意:安装驱动前请先禁用 Nouveau 驱动
# 1. 禁用 Nouveau
echo "blacklist nouveau" | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
echo "options nouveau modeset=0" | sudo tee -a /etc/modprobe.d/blacklist-nouveau.conf
sudo update-initramfs -u
sudo reboot
# 2. 安装依赖
sudo apt update
sudo apt install -y build-essential dkms
# 3. 下载并安装驱动(以 535 版本为例)
wget https://us.download.nvidia.com/XFree86/Linux-x86_64/535.154.05/NVIDIA-Linux-x86_64-535.154.05.run
sudo chmod +x NVIDIA-Linux-x86_64-535.154.05.run
sudo ./NVIDIA-Linux-x86_64-535.154.05.run
# 4. 验证安装
nvidia-smi
3.3 CUDA Toolkit安装
# 下载 CUDA 12.1(根据需求选择版本)
wget https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda_12.1.0_530.30.02_linux.run
sudo sh cuda_12.1.0_530.30.02_linux.run
# 配置环境变量
echo 'export PATH=/usr/local/cuda/bin:$PATH' | sudo tee /etc/profile.d/cuda.sh
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' | sudo tee -a /etc/profile.d/cuda.sh
source /etc/profile.d/cuda.sh
# 验证安装
nvcc --version
3.4 cuDNN安装
# 下载 cuDNN(需要NVIDIA开发者账号)
# 解压并复制到CUDA目录
tar -xvf cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz
sudo cp cudnn-linux-x86_64-8.9.7.29_cuda12-archive/include/cudnn*.h /usr/local/cuda/include/
sudo cp cudnn-linux-x86_64-8.9.7.29_cuda12-archive/lib/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
# 验证安装
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
四、深度学习框架安装
4.1 PyTorch安装
# 使用conda安装(推荐)
conda create -n pytorch python=3.10
conda activate pytorch
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
# 验证安装
python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
4.2 TensorFlow安装
# 安装TensorFlow GPU版本
pip install tensorflow[and-cuda]
# 验证安装
python -c "import tensorflow as tf; print(tf.__version__); print(tf.config.list_physical_devices('GPU'))"
4.3 Docker环境(可选)
# 安装NVIDIA Docker支持
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt update
sudo apt install -y nvidia-docker2
sudo systemctl restart docker
# 运行GPU容器
docker run --gpus all -it nvidia/cuda:12.1.0-base-ubuntu22.04 nvidia-smi
五、性能优化建议
5.1 系统优化
- 关闭CPU频率调节,设置为性能模式
- 调整 swappiness 值为 10 或更低
- 禁用不必要的服务和守护进程
- 配置 hugepages 提升内存性能
5.2 训练优化
- 使用混合精度训练(FP16/BF16)
- 启用梯度累积减少显存占用
- 使用 DeepSpeed、FSDP 等分布式训练框架
- 合理设置 batch size,充分利用GPU显存
六、常见问题排查
6.1 GPU无法识别
- 检查驱动是否正确安装:
nvidia-smi
- 检查PCIe连接:
lspci | grep -i nvidia
- 查看系统日志:
dmesg | grep -i nvidia
- 确认BIOS中Above 4G Decoding已启用
6.2 CUDA out of memory
- 减小 batch size
- 启用梯度检查点(gradient checkpointing)
- 使用 DeepSpeed ZeRO 优化器
- 清理不必要的张量和缓存:
torch.cuda.empty_cache()
6.3 训练速度慢
- 检查数据加载是否成为瓶颈,增加 num_workers
- 确认使用 GPU 而非 CPU 训练
- 检查是否启用了混合精度训练
- 监控 GPU 利用率:
nvidia-smi dmon
技术支持:如需GPU算力租赁或技术支持,请联系世纪云峰科技
电话:156-2522-0012 | 邮箱:Roy.zhou@cloud-peak.com.cn
七、相关文档