Turingアーキテクチャは、Voltaアーキテクチャに次ぐNVIDIAの最新のGPUアーキテクチャであり、新しいT4はTuringアーキテクチャに基づいています。ハイ パフォーマンス コンピューティング(HPC)、ディープ ラーニング トレーニングと推論、機械学習、データ分析、グラフィックス向けに設計されています。このブログでは、MLPerfベンチマーク スイートを搭載したDell EMC PowerEdge R740サーバー上のT4 GPUのディープ ラーニング トレーニング パフォーマンスを数値化します。また、T4でのMLPerfパフォーマンスは、同じソフトウェアを搭載した同じサーバー上のV100-PCIeと比較されます。
Dell EMC PowerEdge R740は、2ソケットの2Uラック サーバーです。このシステムには、インテルSkylakeプロセッサー、最大24個のDIMM、最大3個のダブル幅V100-PCIe、またはx16 PCIe 3.0スロットに4基のシングル幅T4 GPUが搭載されています。T4は、NVIDIAの最新のTuringアーキテクチャを使用するGPUです。T4とV100-PCIe GPUの仕様の違いを表1に示します。MLPerfは、ディープ ラーニング トレーニングにおけるT4のパフォーマンスを評価するために選択されました。MLPerfは、機械学習ソフトウェアとハードウェアのスピードとパフォーマンスを測定するために、Google、Baidu、インテル、AMD、Harvard、およびスタンフォードなど、学界や業界の多様なグループによって組み立てられたベンチマーキング ツールです。イニシャル リリースされたバージョンはv0.5で、画像の分類、オブジェクトの検出と区分化、機械翻訳、強化学習など、さまざまな機械学習ドメインでのモデル実装を対象としています。この評価に使用されるMLPerfベンチマークの概要を表2に示します。Googleの提出によるResNet-50 TensorFlowの実装が使用され、NVIDIAの提出による他のすべてのモデルの実装が使用されました。すべてのベンチマークは、コンテナのないベアメタルで実行されました。表3に、評価対象のハードウェアおよびソフトウェアを示します。MLPerfベンチマークを使用したT4パフォーマンスは、V100-PCIeと比較されます。
Tesla V100-PCIe | Tesla T4 | |
---|---|---|
アーキテクチャ | Volta | Turing |
CUDAコア | 5120 | 2560 |
Tensorコア | 640 | 320 |
コンピューティング機能 | 7.0 | 7.5 |
GPUクロック | 1245 MHz | 585 MHz |
ブースト クロック | 1380 MHz | 1590 MHz |
Memory Type(メモリのタイプ) | HBM2 | GDDR6 |
メモリー サイズ | 16 GB/32 GB | 16 GB |
帯域幅 | 900 GB/秒 | 320GB/s |
スロット幅 | デュアル スロット | シングル スロット |
シングルプレシジョン(FP32) | 14 TFLOPS | 8.1 TFLOPS |
混合精度(FP16/FP32) | 112 TFLOPS | 65 TFLOPS |
倍精度(FP64) | 7 TFLOPS | 254.4 GFLOPS |
TDP | 250 W | 70 W |
表1:T4とV100-PCIeの比較
イメージの分類 | オブジェクトの分類 | オブジェクト インスタンスの区分化 | 翻訳(回帰) | 翻訳(非回帰) | 推奨手順 | |
---|---|---|---|---|---|---|
データ | ImageNet | COCO | COCO | WMT E-G | WMT E-G | MovieLens-20M |
データ サイズ | 144 GB | 20 GB | 20 GB | 37 GB | 1.3 GB | 306 MB |
モデル | ResNet-50 v1.5 | 単一ステージ検知器(SSD) | Mask-R-CNN | GNMT | Transformer | NCF |
フレームワーク | TensorFlow | PyTorch | PyTorch | PyTorch | PyTorch | PyTorch |
表2: 評価で使用されるMLF Perfベンチマーク
プラットフォーム | PowerEdge R740 |
---|---|
CPU | 2 インテルXeon Gold 6136 @ 3.0 Ghz (Skylake) |
メモリー | 384 GB DDR4 @ 2666MHz |
ストレージ | 782 TB Lustre |
GPU | T4、V100-PCIe |
OSとファームウェア | |
オペレーティングシステム | Red Hat® Enterprise Linux® 7.5 x86_64 |
Linuxカーネル | 3.10.0-693.el7.x86_64 |
BIOS | 1.6.12 |
ディープ ラーニング関連 | |
CUDAコンパイラーおよびGPUドライバー | CUDA 10.0.130 (410.66) |
CUDNN | 7.4.1 |
NCCL | 2.3.7 |
TensorFlow | nightly-gpu-dev20190130 |
PyTorch | 1.0.0 |
MLPerf | V0.5 |
表3:ハードウェア構成およびソフトウェアの詳細
図1は、PowerEdge R740サーバーのT4およびV100-PCIeでのMLPerfのパフォーマンス結果を示しています。MLPerfの6つのベンチマークが含まれています。各ベンチマークについて、MLPerf委員会によって定義されたターゲット モデルの精度に到達するために、エンド ツー エンドのモデル トレーニングを実施しました。トレーニング時間(分単位)は、各ベンチマークに対して記録されました。これらの結果に基づいて、次の結論を出すことができます。
ResNet-50 v1.5、SSDおよびMask-R-CNNモデルは、GPU数の増加に合わせて拡張できます。ResNet-50 v1.5の場合、V100-PCIeはT4よりも3.6倍高速です。SSDの場合、V100-PCIはT4よりも3.3~3.4倍高速です。Mask-R-CNNの場合、V100-PCIeはT4よりも2.2~2.7倍高速です。GPUの数が同じで、T4とV100-PCIeのコンバージドには、各モデルのエポック数はほぼ同じです。
GNMTモデルでは、より多くのT4 GPUを使用すると、超直線的な高速化が観察されました。1つのT4と比較して、高速化は2つのT4で3.1倍、4つのT4で10.4倍です。これは、モデルのコンバージェンスがランダム シードの影響を受け、データのシャッフルとニューラル ネットワークの重みの初期化のトレーニングに使用されるためです。使用されているGPUの数に関係なく、ランダム シードが異なる場合、モデルにはコンバージドに必要なエポック数が異なる場合があります。この実験では、モデルはそれぞれ12、7、5、4のエポックを使用して、1、2、3、4 T4と収束しました。モデルはそれぞれ16、12、9のエポックを使用して1、2、3のV100-PCIeと収束しました。同じ数のT4およびV100 GPUでもエポックの数は大幅に異なるため、パフォーマンスを直接比較することはできません。このシナリオでは、ランダム シードに依存しないため、スループット メトリックは公正な比較です。 図2は、T4とV100-PCIeの両方のスループット比較を示しています。同数のGPUを搭載したV100-PCIeは、T4よりも2.5~3.6倍高速です。
NCFモデルとTransformerモデルの問題はGNMTと同じです。NCFモデルの場合、データセットのサイズは小さく、モデルのコンバージに時間はかかりません。したがって、この問題が結果の図に表示されるのは明らかではありません。1つのGPUを使用する場合、Transformerモデルも同じ問題を抱えています。モデルは一つのT4に収束するために12のエポックを要しましたが、一つのV100-PCIeに収束するのに8つのエポックしかかかっていません。2つ以上のGPUを使用する場合、使用されているGPUの数や使用されているGPUタイプに関係なく、モデルには4つのエポックが必要です。このような場合、V100-PCIeはT4よりも2.6~2.8倍高速です。
図1: T4およびV100-PCIeでのMLPerf結果
図2:GNMTモデルのスループット比較
このブログでは、さまざまなMLPerfベンチマークを使用して、Dell EMC PowerEdge R740サーバーでのT4 GPUのパフォーマンスを評価しました。T4のパフォーマンスは、同じサーバーとソフトウェアを使用しているV100-PCIeと比較しました。全体として、V100-PCIeは、各ベンチマークの特性に応じてT4よりも2.2~3.6倍高速です。一つの観測値は、使用されているランダム シード値に関係なく安定しているモデルもありますが、GNMT、NCF、Transformerを含む他のモデルはランダム シードによって大きな影響を受けます。今後の作業では、不安定なモデルをより少ないエポックで収束させるために、ハイパー パラメーターを微調整します。また、より多くのGPUとノードでMLPerfを実行して、PowerEdgeサーバー上のこれらのモデルの拡張性を評価します。
*免責事項:ベンチマークを目的として、Dell EMC PowerEdge R740で4つのT4 GPUが評価されました。現在、PowerEdgeR740は、x16 PCIeスロットで最大3つのT4を公式にサポートしています。