Skip to content

kigland/gpu-selection

Repository files navigation

GPU 性能实测与选型分析

本仓库整理了 AutoDL GPU 性能实测数据,并按 GPU 架构、代际和精度做了可视化分析。当前性能数据来自 data/gpu_perf/*.txt,解析后的结构化记录在 data/gpu_perf_records.jsonl,架构分类在 data/arch.json

需要注意:当前实测日志里的 PyTorch 参数为 train=False,因此这些图更直接反映的是推理/前向计算吞吐。训练场景通常还会受到反向传播、优化器状态、显存容量、多卡通信、数据加载和框架混合精度策略影响;不过这些前向吞吐仍然能很好地反映不同 GPU 在深度学习计算上的基础差异。

图表概览

1. 全部 GPU 吞吐排行

全部 GPU 吞吐排行

这张图按 GPU 展示四类任务吞吐:

  • ResNet50 FP16
  • ResNet50 FP32
  • ViT Transformer FP16
  • ViT Transformer FP32

柱子为 iteration 1-4 的平均 images/s,误差条为标准差。颜色代表架构。

核心观察:

  • Blackwell 与 Hopper 是当前最强梯队RTX PRO 6000 BlackwellH8005090/5090D 在多数 FP16 任务中明显领先。
  • H800 在 ViT FP16 和 ResNet FP32 上非常强,说明 Hopper 在高吞吐 Tensor Core 和 FP32 路径上都有优势。
  • A100 在 ViT FP32 上表现突出,是少数在 Transformer FP32 场景里仍然很强的老一代数据中心卡。
  • Pascal 代卡不适合依赖 FP16/Tensor Core 的现代深度学习任务1080 TiTITAN XpTesla P40 在 FP16 加速上没有优势,甚至可能比 FP32 更慢。

2. FP16 相对 FP32 加速比

FP16 加速比

这张图展示同一 GPU 上 FP16 / FP32 的吞吐比。

核心观察:

  • Transformer 类任务对低精度更敏感。ViT FP16 相比 FP32 的收益通常比 ResNet50 更大。
  • H800、Blackwell、Turing Tensor Core 卡在 ViT FP16 上收益明显。例如 H800 的 ViT FP16/FP32 加速比最高,Blackwell 系列也非常突出。
  • Pascal 代卡没有现代 Tensor Core 路径,FP16 不应被视为加速手段。图中 TITAN Xp1080 TiTesla P40 的 FP16/FP32 比值小于 1。
  • 国产卡在 ResNet50 FP16 上有可观加速,但生态、框架适配和算子覆盖需要单独评估,不能只看吞吐柱子。

3. 按架构汇总

按架构分布

这张图把每张 GPU 按架构聚合,点代表单卡,黑线代表该架构组的中位数。

核心观察:

  • 架构代际趋势很清楚:Pascal/Turing 明显落后,Ampere 到 Ada 有较大提升,Hopper/Blackwell 进入高端区间。
  • 同一架构内部差异很大。Ampere 里既有 RTX 3060,也有 A100;Ada 里既有 4080/4090,也有 vGPU 和 L40。因此只看架构不够,还要看具体型号和显存形态。
  • Hopper 和 Blackwell 的上限很高,但 Hopper 当前样本少,主要由 H20/H800 支撑;Blackwell 覆盖 RTX 50 系和 RTX PRO Blackwell。

4. 30xx / 40xx / 50xx 代际 cluster 对比

30xx 40xx 50xx 对比

这张图只比较消费级/工作站代际:

  • 30xx:306030803080 Ti30903090 Ti
  • 40xx:4080vGPU 32GB4090vGPU 48GB4090 D
  • 50xx:50905090D

其中 vGPU 32GB 可视为 4080 魔改版,vGPU 48GB 可视为 4090 魔改版,因此图中按这个关系排序。

核心观察:

  • 50xx 相比 40xx 仍有明显代际提升,尤其在 ResNet50 FP16、ViT FP16 上优势明显。
  • 40xx 相比 30xx 是稳定提升。在四类任务里,40xx cluster 的中位吞吐均高于 30xx。
  • vGPU 48GB 在很多场景接近或超过 4090/4090D 级别,同时显存更大,适合更大 batch 或更大模型的推理与微调。
  • vGPU 32GB 大体处于 4080 和 4090 之间的实用位置,如果显存比纯 4080 更关键,它比只看核心型号更有吸引力。

面向深度学习的选卡建议

推理场景

推理更接近本仓库的测试设置,因为日志为 train=False

  • 大吞吐在线/离线推理:优先看 Hopper、Blackwell、4090/vGPU 48GB、A100。
  • Transformer/LLM 类推理:优先选择 FP16/BF16/FP8 路径强的架构。Hopper 和 Blackwell 更值得关注;Ada/4090 级别在性价比上也很强。
  • 显存敏感推理:vGPU 48GB、A40、A100、H 系列更适合长上下文、大 batch 或多模型常驻。
  • 老 Pascal 卡:适合低成本调试和小模型,不适合作为现代低精度推理主力。

训练场景

训练不只看前向吞吐,还要考虑显存、反向传播、混合精度、优化器状态和通信。

  • 单卡训练/微调:4090、4090D、vGPU 48GB、5090/5090D 是很强的实用选择。显存不足时,vGPU 48GB 比普通 24GB 卡更灵活。
  • Transformer 训练:优先选择低精度能力强、显存足的卡。H800、A100、Blackwell、4090/vGPU 48GB 都更适合。
  • 多卡训练:不要只看单卡吞吐。A100/H800 这类数据中心卡通常在多卡互联、稳定性和显存容量上更适合长时间训练。
  • FP32 训练或数值敏感任务:A100、H800、Blackwell 在 FP32/TF32 路径上更稳。消费卡虽然 FP16 很强,但 FP32 和多卡训练生态未必最优。

快速结论

  • 只想要便宜调试:Pascal/Turing 老卡还能用,但不要期待 FP16 加速。
  • 常规 CV/中小模型训练:30xx/40xx 都可用,40xx 明显更强。
  • 需要更大显存但仍看性价比:vGPU 32GB/48GB 值得重点看,尤其 vGPU 48GB。
  • 追求高吞吐推理:H800、RTX PRO 6000 Blackwell、5090/5090D、4090/vGPU 48GB 是第一梯队。
  • 追求大模型训练稳定性:A100/H800 这类数据中心卡优先级更高,尤其多卡训练。

特性数据

Architecture Series Compute Capability TensorCore Transformer Engine Structured Sparsity
Maxwell Titan X 5.2
Pascal P100 6.0
Pascal GTX10xx/Titan Xp 6.1
Volta V100 7.0 v1
Turing RTX20xx/T4 7.5 v2
Ampere A100/A800/A30 8.0 v3 o
Ampere RTX30xx/A10/A40/RTX A6000 8.6 v3 o
Ada Lovelace RTX40xx/L4/L40/L40S 8.9 v4 v1△ o
Hopper H100/H20/H200/H800 9.0 v4 v1 o
Blackwell RTX50xx/PRO 6000 12.0 v5 v2 o
Blackwell B100/B200 10.0 v5 v2 o
Blackwell Ultra B300 10.3 v5 v2 o
Architecture Series Compute Capability FP64 FP32 TF32 FP16 BF16 FP8 FP6 FP4 INT8 INT4
Maxwell Titan X 5.2 o
Pascal P100 6.0 o o o
Pascal GTX10xx/Titan Xp 6.1 o
Volta V100 7.0 o o o o
Turing RTX20xx/T4 7.5 o o o o
Ampere A100/A800/A30 8.0 o o o o o o o
Ampere RTX30xx/A10/A40/RTX A6000 8.6 o o o o o o
Ada Lovelace RTX40xx/L4/L40/L40S 8.9 o o o o o o o
Hopper H100/H200/H800 9.0 o o o o o o o
Hopper H20 9.0 o o o o o o o
Blackwell RTX50xx/PRO 6000 12.0 o o o o o o o o
Blackwell B100/B200 10.0 o o o o o o o o o
Blackwell Ultra B300 10.3 o o o o o o o o

o:具有原生且具有实用吞吐的硬件计算路径
△:能够执行,但吞吐显著受限,或不属于该代 Tensor Core 原生路径
空白:没有对应的专用/实用硬件加速路径

数据局限

  • 当前数据主要是单卡、前向推理吞吐,不等价于完整训练速度。
  • 图中没有直接纳入价格、可用区、功耗、显存带宽、NVLink/PCIe 拓扑等因素。
  • 不同 CUDA/PyTorch/驱动版本会影响结果,尤其是新架构 GPU。
  • 国产加速卡的生态和框架适配差异较大,吞吐数据只能作为参考,实际项目需要额外验证算子覆盖和模型兼容性。

About

GPU Selection for DL

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages