主要なAIモデルにおける RTX シリーズ GPUのパフォーマンス比較検証②

弊社で提供しているオーダーメイドPC製作サービス TEGSYSでは、お客さまのご要望に合わせ、最適なスペックのPCをご提案しております。

前回の記事で、弊社で取り扱いのある現行GPUについて、TensorFlow、PyTorch等主要なAI、ディープラーニング環境での性能や優位性を比較検証しましたが、処理条件によるパフォーマンスのより詳細な比較にあたり、今回はバッチサイズを変更しての処理時間を計測いたしました。

[目次]

比較するモデルの種類

比較するGPUの仕様
-コンピュータ仕様
-パフォーマンスの評価項目
-RTX 2080 Ti
-RTX 6000 Ada
-RTX A6000
-RTX 4090
-GPU別の比較グラフ

おわりに

比較するモデルの種類

パフォーマンステストに使用したモデルの概要は下記の通りです。

ResNet-50
50層の畳み込みニューラルネットワーク、画像認識モデルで主に利用される
タイプ:畳み込みニューラルネットワーク (CNN) タスク:画像分類
BERT
自然言語の文脈や関係性を処理するために主に利用される
タイプ:トランスベースのモデル タスク:自然言語処理 (NLP)
U-Net
医療画像解析で一般的に使用されており、画像内の観察対象の位置や範囲の抽出に利用されている
タイプ:畳み込みニューラルネットワーク (CNN) タスク:セマンティック・セグメンテーション
GPT-2
大規模言語モデルで、テキスト生成、翻訳、質問応答など、さまざまな自然言語処理タスクを実行できる
タイプ:トランスベースのモデル タスク:テキストと自然言語処理 (NLP)

比較するGPUの仕様

比較に使用したGPUとスペックは下記のとおりです。

※RTX2080Tiは旧世代製品の比較参考のため掲載しています

Attributes RTX 2080Ti RTX 4090 RTX A6000 RTX 6000 Ada
GPU architecture NVIDIA GeForce RTX 2080 NVIDIA GeForce RTX 4090 NVIDIA GeForce RTX A6000 NVIDIA GeForce RTX 6000 Ada
CUDA core 4352 16384 10752 18176
Tensor core 544 512 336 568
RT core 68 128 84 142
memory size 12 GB GDDR6 24 GB GDDR6X 48 GB GDDR6 48 GB GDDR6
memory bandwidth Up to 616 GB/s Up to 1008GB/s Up to 768GB/s Up to 960GB/s
Maximum power consumption 250W 450W 300W 300W

コンピュータ仕様

GPU以外のハードウェア仕様は、以下の条件に揃えてパフォーマンスを測定しました。

Chipset Intel W790
CPU Intel Xeon w7-2465X
RAM 合計64GB (DDR5-4800 ECC Registered 16GB x4)
Storage 1.92TB SSD S-ATA

パフォーマンスの評価項目

パフォーマンスは、各GPUモデルでBatch Size を 8 / 16 / 32 / 64 / 128 / 256 / 512 / 1024 にそれぞれ設定した場合の 推論時間  “Inference Time” および 処理効率 で評価しました。

Batch Size モデルを通過する1回のフォワードパスで一緒に処理されるインスタンスの数。
バッチサイズを大きくすると、GPUの使用率が向上することがよくあります。
Inference Time モデルが与えられたバッチに対して推論を実行するのにかかる時間。
値が小さいほど高いパフォーマンスを発揮したことを示します。
Cases Per Second 1秒あたりの処理インスタンスの数。 Batch Size / Inference Time で算出
処理効率

RTX 2080 Ti の8 batchesのCases Per Secondを100%とした場合の処理効率

測定結果

各GPUにおけるバッチサイズごとの推論時間 “Inference Time” を表とグラフで可視化しました。

なお、条件によりメモリエラーが発生した部分は表内では「MEMORY ERROR」と記載しています。
※当該エラーはGPUメモリ不足により発生したものです。

RTX 2080 Ti

Model Batch Sizes
8 16 32 64 128 256 512 1024
ResNet-50 0.75 0.83 1.05 1.56 2.73 4.85 8.73 MEMORY ERROR
U-Net 0.19 0.23 0.33 MEMORY ERROR MEMORY ERROR MEMORY ERROR MEMORY ERROR MEMORY ERROR
GPT-2 0.22 0.23 0.27 0.29 0.37 0.54 0.94 1.96
BERT 0.49 0.52 0.59 0.70 0.79 1.04 1.56 2.61

 

RTX 6000 Ada

Inference Times for Different Batch Sizes [Individual running -> One model with one batch at a time]

Model Batch Sizes
8 16 32 64 128 256 512 1024
ResNet-50 0.61 0.75 0.75 0.97 1.43 2.43 4.36 9.26
U-Net 0.21 0.21 0.21 0.25 0.38 MEMORY ERROR MEMORY ERROR MEMORY ERROR
GPT-2 0.21 0.19 0.21 0.22 0.26 0.31 0.46 0.79
BERT 0.45 0.41 0.40 0.40 0.47 0.58 0.94 1.43

 

RTX A6000

Inference Times for Different Batch Sizes [Individual running -> One model with one batch at a time]

Model Batch Sizes
8 16 32 64 128 256 512 1024
ResNet-50 0.82 0.92 1.06 1.36 2.03 3.40 6.22 11.87
U-Net 0.21 0.21 0.24 0.33 0.47 MEMORY ERROR MEMORY ERROR MEMORY ERROR
GPT-2 0.18 0.18 0.20 0.23 0.26 0.31 0.48 0.77
BERT 0.38 0.41 0.42 0.61 0.55 0.75 1.02 1.82

 

RTX 4090

Inference Times for Different Batch Sizes [Individual running -> One model with one batch at a time]

Model Batch Sizes
8 16 32 64 128 256 512 1024
ResNet-50 0.59 0.68 0.80 1.05 1.51 2.48 4.39 9.17
U-Net 0.20 0.20 0.21 0.28 MEMORY ERROR MEMORY ERROR MEMORY ERROR MEMORY ERROR
GPT-2 0.18 0.18 0.20 0.21 0.25 0.30 0.43 0.81
BERT 0.35 0.36 0.39 0.40 0.43 0.57 0.70 1.13

 

GPU別の比較グラフ

GPU別のInference Timeと処理効率のグラフは以下の通りです。

Resent-50

Inference Time (推論時間) 処理効率

U-Net

Inference Time (推論時間) 処理効率

GPT-2

Inference Time (推論時間) 処理効率

BERT

Inference Time (推論時間) 処理効率

Batch size が大きいほど一回の処理に時間がかかりますが、今回のBatch Size検証の範囲では、処理効率はいずれのAIモデル、GPUモデルでも、Batch Size が大きいほど増える傾向が確認できました (Resnet-50 の512→1024 は一部下降が見られます) 。

Batch Size により学習の精度が変わるため、大きいほど精度が上がるとは言えませんが、計算処理の効率の観点では高 Batch Size の方が効率的と考えられます。

しかし、特にU-Net が顕著ですが、GPUメモリが少ないモデルにてBatch size を大きくした際にメモリエラーが発生する傾向を確認しています。
また、GPT-2 の RTX 2080Ti の処理効率のグラフより、Batch Size 256 以降の増加がみられません。RTX 2080Ti はGPUメモリ容量 (12GB) が他のGPUモデルの半分以下であり、処理時のエラーは出ないものの Batch Size 増大に伴う処理効率が頭打ちになっている可能性があります。
以上より、AIモデルの計算処理では、GPUメモリ容量が重要な要素の一つであると考えられます。

BERTではRTX 4090が他のGPUモデルより処理能力が高い結果が出ております。
同世代の、RTX 6000 Ada の方が、GPUメモリ、各種計算のCore数では上回っておりますが、Boost周波数 が RTX 6000 Ada が2505MHz、RTX 4090 が 2520 MHz と、ほぼ同等ではあるものの、コア周波数が RTX 6000 Ada が914MHz、RTX 4090 が 2235 MHz と、RTX 4090 が上回っており、最大消費電力もRTX6000adaが300Wに対してRTX4090は450Wに設定されております。

  RTX 6000 Ada RTX 4090
Boost周波数 2505MHz 2520MHz
コア周波数 914MHz 2235MHz
最大消費電力 300W 450W

以上から、RTX4090は発熱量と引き換えに高クロックの状態を維持しやすい特性があり、この特性により、処理中の RTX 6000 AdaとRTX4090で動作周波数に差が開き、RTX4090の処理能力が突出した可能性が考えられます。

その他は、基本的には新世代のGPU、スペックの良いGPUの方の処理効率が高い傾向が確認できます。
ただ、使用するモデルやBatch sizeによりモデル間の処理能力に差が無い実行条件もあります。そのため、必ずしも最高スペックのGPUを採用することが最善とは限らず、実際の用途に応じて重要視するべきスペックを確認することが費用対効果の向上に影響すると考えられます。

おわりに

弊社では、AI・ディープラーニング用途向けのPCやワークステーション以外でも、お客さま個別のご要望に合わせ、最適なスペックのPCをご提案しております。
これまでのご提案実績や検証結果等のノウハウをもとにベストな提案を目指しておりますので、PC導入はお気軽にご相談ください。

DeepLearning環境における最適なGPU選びのご相談はお気軽に!

研究用・産業用PCの製作・販売サービス TEGSYS – テグシス

width="340"

width="430"

このエントリーをはてなブックマークに追加