メモリ帯域幅とコンピューティング能力、どちらがディープラーニング実行パフォーマンスの鍵となるのでしょうか?

メモリ帯域幅とコンピューティング能力、どちらがディープラーニング実行パフォーマンスの鍵となるのでしょうか?

モデルのハードウェア要件に関して、まず頭に浮かぶのは計算量、つまりディープラーニング モデルがフィードフォワードを完了するために必要な回数です。ただし、計算量に加えて、モデルのメモリ帯域幅の要求も、実際の計算に必要な時間に影響を与える重要なパラメータです。以下で説明するように、メモリ帯域幅が制限されている場合、計算量を単純に減らしても計算時間は比例して短縮されません。

メモリ帯域幅がハードウェア システムのパフォーマンスに与える影響は、上の図に示されています。メモリをボトル、コンピューティング ユニットをカップに例えると、データはボトル内のカラフルな粒子であり、メモリ インターフェイスはボトルの口です。ボトルの口からのみ、データがカップに入り、消費 (処理) されます。メモリ帯域幅はボトルネックの幅です。ボトルの口幅が狭いほど、データがカップ(処理装置)に入るまでに時間がかかります。 「料理が上手な人は米がなければ料理ができない」ということわざがあります。帯域幅が制限されている場合、たとえ処理ユニットが最速であっても、処理ユニットはほとんどの場合データを待っているだけなので、計算能力が無駄になります。

ディープラーニングネットワークとルーフラインモデル

エンジニアにとって、定性的な分析だけでは不十分です。アルゴリズムのメモリ帯域幅の需要とそれがコンピューティング パフォーマンスに与える影響を定量的に分析できる必要もあります。

アルゴリズムのメモリ帯域幅要件は通常、「演算強度 (または算術強度)」という量を使用して表現され、単位は OPs/バイトです。この量は、アルゴリズムに読み込まれるデータの単位ごとに平均して何回の計算操作をサポートできるかを意味します。計算の強度が高ければ高いほど、データ単位でサポートできる操作が多くなり、アルゴリズムのメモリ帯域幅の要件が低くなります。つまり、計算の強度が高いのは良いことです。

例を見てみましょう。ストライドが 1 の 3x3 畳み込み演算の場合、入力データ プレーンのサイズは 64x64 であると想定されます。簡単にするために、入力機能と出力機能の両方が 1 であると仮定します。このとき、合計 62x62 回の畳み込み演算が必要で、各畳み込みには 3x3=9 回の乗算と加算演算が必要なので、計算総数は 34596 回となり、データ量は (データと畳み込みカーネルの両方が単精度浮動小数点数 2 バイトを使用すると仮定)、64x64x2 (入力データ) + 3x3x2 (畳み込みカーネル データ) = 8210 バイトとなり、計算量は 34596/8210=4.21 となります。 1x1畳み込みに切り替えると、計算の総数は64x64=4096になり、必要なデータ量は64x64x2 + 1x1x2=8194になります。明らかに、1x1 畳み込みに切り替えると計算量は 9 倍近く削減できますが、演算強度も 0.5 に低下します。つまり、メモリ帯域幅の要求も 9 倍近く増加します。したがって、メモリ帯域幅が 1x1 畳み込み計算のニーズを満たせない場合は、1x1 畳み込み計算に切り替えると計算量を 9 倍近く削減できますが、計算速度を 9 倍に上げることはできません。

ここで、ディープラーニング コンピューティング デバイスには 2 つのボトルネックがあることがわかります。1 つはプロセッサのコンピューティング能力であり、もう 1 つはコンピューティング帯域幅です。どれがコンピューティング パフォーマンスを制限しているかを分析するにはどうすればよいでしょうか? Roofline モデルを使用できます。

上の図は、典型的なルーフライン曲線モデルを示しています。座標軸は、コンピューティング パフォーマンス (垂直軸) とアルゴリズムのコンピューティング強度 (水平軸) を表しています。ルーフライン曲線は、左側の上昇領域と右側の飽和領域の 2 つの部分に分かれています。アルゴリズムの計算強度が低い場合、曲線は上向きのゾーンにあります。つまり、計算パフォーマンスは実際にはメモリ帯域幅によって制限され、多くの計算処理ユニットがアイドル状態になります。アルゴリズムの計算強度が増加すると、つまり、アルゴリズムが同じ量のデータでより多くの計算を完了できるようになると、アイドル状態の計算ユニットがますます少なくなり、計算パフォーマンスが向上します。その後、計算の強度が増すにつれて、アイドル状態の計算ユニットの数が減少し、最終的にすべての計算ユニットが使用されるようになります。ルーフライン曲線は飽和ゾーンに入ります。このとき、計算の強度が増しても計算ユニットが利用できなくなるため、計算性能はそれ以上向上しません。言い換えると、計算性能は計算能力(メモリ帯域幅ではない)によって決まる「ルーフ」に遭遇します。前述の 3x3 畳み込みと 1x1 畳み込みの例を取り上げると、3x3 畳み込みはルーフライン曲線の右側の飽和領域にある可能性がありますが、1x1 畳み込みは計算強度の低下によりルーフラインの左側の上昇領域に達する可能性があります。このように、1x1 畳み込みの計算パフォーマンスは低下し、ピークパフォーマンスに到達できなくなります。 1x1 畳み込みの計算量は 9 倍近く削減されますが、計算性能の低下により、実際の計算時間は 3x3 畳み込みの 9 分の 1 にはなりません。

明らかに、コンピューティング システムのメモリ帯域幅が非常に広い場合、アルゴリズムは、非常に計算集約的になることなく、コンピューティング能力の上限によって決定される「天井」に簡単に到達する可能性があります。下の図では、計算能力は変化せず、メモリ帯域幅が増加するにつれて、計算能力の上限に到達するために必要な計算強度は低下します。

ルーフライン モデルは、アルゴリズムとハードウェアの共同設計に非常に役立ちます。これにより、アルゴリズムとハードウェアの最適化の方向を決定できます。メモリ帯域幅を増やすか、メモリ帯域幅の要件を減らすか、またはコンピューティング能力を向上させるか、コンピューティング能力を減らすかなどです。アルゴリズムがルーフライン曲線の上昇領域にある場合は、メモリ帯域幅を増やすか、メモリ帯域幅要件を減らす必要があります。この場合、計算能力を増やしたり、計算量を減らしたりしても役に立ちません。逆に。

実際の例を見て、さまざまな機械学習アルゴリズムがルーフライン モデルでどのように機能するかを比較してみましょう。次の図は、Google の TPU 論文「Tensor Processing Unit のデータセンター内パフォーマンス分析」から引用したものです。図からわかるように、LSTMアルゴリズムは計算強度が最も高いため、ルーフラインモデルの上昇領域の真ん中に留まっています。つまり、TPUがLSTMアルゴリズムを実行すると、メモリ帯域幅の制限により、パフォーマンスは約3TOPSにしかならず、ピークパフォーマンス(90TOPS)の30分の1にすぎません。古典的な全接続ニューラルネットワーク(多層パーセプトロン、MLP)の計算強度は LSTM よりわずかに優れていますが、ルーフライン曲線の上昇領域にもとづいており、実際の実行パフォーマンスは 10TOPS 程度です。畳み込みニューラル ネットワーク モデル、特に CNN0 は、畳み込みカーネルを畳み込みニューラル ネットワークで再利用できるため、計算強度が非常に高く、TPU ルーフライン曲線のルーフ (86 TOPS) に非常に近づくことができます。 CNN1 モデルも計算強度は高いものの、さまざまな理由によりトップに到達できません (論文では、CNN1 モデルの特徴深度が浅く、TPU の計算ユニットを十分に活用できないと述べられています)。この例は、ハードウェア アルゴリズムの共同設計におけるもう 1 つの重要なポイントを示しています。メモリ帯域幅に加えて、アルゴリズムが屋根に到達するのを妨げる可能性のある「その他の理由」があり、これらの「その他の要因」を最小限に抑えるように努める必要があります。

<<:  Alipay のディープラーニング エンジン xNN を公開

>>:  ディープラーニングにおける多体問題の解決方法

ブログ    
ブログ    
ブログ    

推薦する

ChatGPT を使用して HR を強化するにはどうすればよいでしょうか?

------01------人事担当者としては、日々さまざまな採用情報を発信する必要があります。以...

AI支援ツールを使用してソフトウェア要件を定義する

Userdoc は、ソフトウェア要件ド​​キュメントの作成を支援する AI 支援サービスです。最近の...

ブロックチェーンのいくつかのコンセンサスアルゴリズム

まず、一般的なビザンチン将軍問題からコンセンサスとは何かを理解しましょう。ビザンチン将軍問題ビザンチ...

AIがエンタープライズデータカタログを救う方法

「データ カタログ」という概念は、実は新しいものではありません。メインフレームの時代から、企業はデー...

アイウェア市場は1000億円規模を超えるか? 3Dプリントで「顔のカスタマイズ」を実現

私たちの日常生活には、近視用メガネ、サングラス、サングラス、遠視用メガネ、ゴーグルなど、視力矯正、視...

新しいソフトロボット:手足を再生し、自然にカモフラージュできるヒトデ

Science Fiction Network は 1 月 5 日に報じました (Liu Yazhu...

2018 年に人工知能を変える 5 つのビッグデータ トレンド

ビッグデータや人工知能の広範な導入を通じて、これらの新興技術の大きな影響が世界経済に浸透するにつれ、...

センサーがなければ、電子自動化もロボットも存在しないでしょう。

センサーは、温度、湿度、光、その他の非電気量などの特定の物理的パラメータの変化を、電流、電圧などの別...

...

AIは人間ではないため、米国特許庁はAIの発明の全てを認めない

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

アンドリュー・ン氏のチームが2019年のAIトレンドを振り返る:自動運転は寒い冬を迎え、ディープフェイクはモンスターとなった

あと数日で2019年も終わりです。今年は AI が夢から現実へと移り変わる年です。NLP から自動運...

マルチモーダルディープラーニング:ディープラーニングを用いてさまざまな情報を統合する

ディープラーニングを使用して、さまざまなソースからの情報を統合します。マルチモーダルデータ私たちの世...

...

Gen-2 は AI 生成ビデオに革命をもたらします。一言で4K高画質映画が作れる。ネットユーザー「ゲームのルールを完全に変えた」

これは間違いなく、生成 AI の進歩における画期的な出来事です。深夜、Runway の象徴的な AI...

研究者らは、業界の偽造防止技術を促進するために、ディープフェイクAIによる音声偽造攻撃と防御の綱引きを開始した。

7月10日、DeepFakeは特定の人物の写真、動画、音声を生成できる一連のAIモデルの総称である...