[論文レビュー] Tango: A Deep Neural Network Benchmark Suite for Various Accelerators
Tangoは、CUDAおよびOpenCLベースの深層ニューラルネットワークベンチマークスイートであり、DNNフレームワークやプロプライエタリなライブラリを必要とせずに、多様なアクセcelレータ上で軽量でポータブルなDNNワークロード評価を可能にする。シミュレータ、GPU、FPGAの各環境で5つのCNNと2つのRNNのアーキテクチャ的プロファイリングを実施し、メモリアクセスパターン、レジスタ使用率、スケジューラ感受性に関する重要な知見を明らかにした。特に畳み込み層に顕著な高いデータ局所性と、GPUレジスタの未利用度が判明した。
Deep neural networks (DNNs) have been proving the effectiveness in various computing fields. To provide more efficient computing platforms for DNN applications, it is essential to have evaluation environments that include assorted benchmark workloads. Though a few DNN benchmark suites have been recently released, most of them require to install proprietary DNN libraries or resource-intensive DNN frameworks, which are hard to run on resource-limited mobile platforms or architecture simulators. To provide a more scalable evaluation environment, we propose a new DNN benchmark suite that can run on any platform that supports CUDA and OpenCL. The proposed benchmark suite includes the most widely used five convolution neural networks and two recurrent neural networks. We provide in-depth architectural statistics of these networks while running them on an architecture simulator, a server- and a mobile-GPU, and a mobile FPGA.
研究の動機と目的
- リソース制限のあるプラットフォームでの評価にDNNフレームワークやプロプライエタリライブラリを必要としない、ポータブルで軽量なDNNベンチマークスイートの不足を解消すること。
- アーキテクチャシミュレータやFPGAのような組み込みアクセcelレータと互換性を持つベンチマークスイートを提供することで、初期段階のハードウェア評価を可能にすること。
- シミュレータ、サーバーGPU、モバイルGPU、FPGAを含む多様なプラットフォーム上で、広く使われているDNNモデルの詳細なアーキテクチャ的プロファイリングを提供すること。
- オンチップメモリ階層とワープスケジューリングがDNNパフォーマンスに与える影響を分析すること、特に畳み込み層と全結合層に対して。
提案手法
- ベンチマークスイートはCUDA CおよびOpenCLのみで実装されており、高水準のDNNフレームワークに依存しないように、DNN演算を低レベルの数学的計算に分解している。
- CUDAまたはOpenCLをサポートする任意のプラットフォームで、5つのCNN(CifarNet、AlexNet、SqueezeNet、ResNet、VGGNet)および2つのRNN(GRU、LSTM)の推論専用実行が可能である。
- アーキテクチャ的特性は、Pascal GPU設定を採用した修正版GPGPU-Simアーキテクチャシミュレータを用いて収集され、キャッシュサイズやスケジューラを変更した制御された実験が可能になった。
- レジスタファイル使用量、L2キャッシュミス、ワープスケジューラの挙動といったパフォーマンスメトリクスが、異なるネットワーク層とプラットフォーム間で測定・分析された。
- シミュレータと実ハードウェアの両方で一貫した評価が可能となり、メモリアクセスパターンやリソース利用度といったアーキテクチャ的トレードオフの直接比較が可能になった。
実験結果
リサーチクエスチョン
- RQ1異なるDNNモデルのメモリフットプリントは、プラットフォームによってどのように変化するか。また、どのモデルが小さな組み込みデバイスへのデプロイに適しているか。
- RQ2DNNワークロードにおけるGPUレジスタの未利用度はどの程度であり、異なるネットワークアーキテクチャ間でどのように変動するか。
- RQ3異なるDNNレイヤータイプのデータ局所性は、特にL2キャッシュミス率の観点からどのように評価できるか。
- RQ4DNN実行時間はワープスケジューラポリシーにどの程度感受性を示すか。また、どのスケジューラが異なるDNNモデルに対して最良のパフォーマンスを発揮するか。
主な発見
- 畳み込み層は全結合層よりも顕著に高いデータ局所性を示し、L2ミス率は1%未満である一方、全結合層では10%を超えることが判明した。
- AlexNetとResNetはPascal GPUの1SMあたり256 KBのレジスタファイル容量の50%以上を消費しているが、RNNは20 KB未満に留まっており、GPUレジスタの著しい未利用度が示された。
- LRR(基本的なラウンドロビン)ワープスケジューラは、AlexNetとResNetにおいてGTOやTLVを上回り、特に畳み込み層で高いデータ局所性によりメモリスタールオーバーヘッドが低減されるため優れた性能を示した。
- GRUおよびLSTMモデルは500 KB未満のメモリに収まるため、小さな組み込みデバイスに適している。一方、大多数のCNNは1 MBを超える必要があり、FPGA上ではレイヤー分割が必要となる。
- オンチップメモリは、高いデータ局所性を示す畳み込み層の最適化に最も効果的である。一方、他のメモリ集約型レイヤー(例:全結合層)には、代替の最適化手法が必要である。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。