基于ResNet-50模型的显卡性能测试
晨涧云算力平台支持3090、4090、5090等显卡的租用,这3张显卡是英伟达三代消费级显卡的旗舰,这里用ResNet-50模型训练的性能测试来比较下这3代旗舰显卡的算力表现,以便于深度学习场景用户更好的选择合适的显卡。
补充测试A100 40G和4090 48G两张显卡在ResNet-50模型训练场景下的性能表现。
显卡参数规格
| RTX5090 | RTX4090 | RTX3090 | A100 40G | 4090 48G | |
|---|---|---|---|---|---|
| 架构 | Blackwell | Ada Lovelace | Ampere | Ampere | Ada Lovelace |
| CUDA核心 | 21,760 | 16,384 | 10,496 | 6,912 | 16,384 |
| 显存容量 | 32 GB GDDR7 | 24 GB GDDR6X | 24 GB GDDR6X | 40GB HBM2 | 48 GB GDDR6X |
| 显存带宽 | 1792 GB/s | 1,008 GB/s | 936 GB/s | 1,555 GB/s | 1,008 GB/s |
| TDP功耗 | 575W | 450W | 350W | 250W | 450W |
| FP32 算力 | 104.8 TFLOPS | 82.6 TFLOPS | 35.6 TFLOPS | 19.5 TFLOPS | 82.6 TFLOPS |
| Tensor FP16 算力 | 419 TFLOPS | 330 TFLOPS | 142 TFLOPS | 312 TFLOPS | 330 TFLOPS |
为什么使用ResNet-50模型
ResNet-50是经典的计算机视觉模型,一种深度为50 层的卷积神经网络(CNN),是深度学习领域使用最广、最成熟的基准模型之一。ResNet-50模型平衡,参数数量及显存占用适中,涵盖了深度学习训练的关键计算模式,包含大量矩阵计算,可以评估AI核心的算力;同时各种框架(PyTorch/TensorFlow/JAX/ONNX)都内置,可以直接加载。
这里基于Pytorch框架来训练ResNet-50模型,使用CIFAR-10数据集进行测试。
显卡性能实测
使用不同的模型精度(FP32和FP16混合精度),不同批次大小,多轮运行测试统计指标取平均值。
5090

4090

3090

下面的A100 40G和4090 48G的测试,因为显存较大,增加了Batch Size=384的样本吞吐测试。
A100 40G

4090 48G

测试结果分析
指标解释:
精度:FP32 单精度训练,FP16 混合精度训练
BatchSize:训练批次大小
Samples/s:每秒样本吞吐量
VRAM (MB):平均显存使用量
GPU Util (%):平均GPU利用率
取最大的「每秒样本吞吐量」指标进行比较:
| RTX5090 | RTX4090 | RTX3090 | A100 40G | 4090 48G | |
|---|---|---|---|---|---|
| 最大样本吞吐量(单精度) | 1,076 | 699 | 489 | 880 | 702 |
| 最大样本吞吐量(混合精度) | 1,822 | 1,224 | 836 | 1321 | 1255 |
从上表的测试结果分析,使用ResNet-50模型的训练样本吞吐速度。
结合单精度和混合精度模式,5090的样本吞吐速度是4090的1.5倍左右,4090的样本吞吐速度是3090的1.45倍左右;
单精度训练A100 40G的样本吞吐速度是4090 48G的125%,半精度训练A100 40G的样本吞吐速度是4090 48G的105%;
4090 48G魔改显卡相比原始4090 24G显卡在算力上并没有损失。
可以结合这些显卡的租用价格,以及使用场景,选择合适的显卡创建实例。