【Cerebras × Superdome Flex第4弾】Superdome Flex×Cerebras共同検証結果と解説

本ブログではSuperdome Flex×Cerebras共同検証結果の報告と解説を行います。

みなさん、こんにちは

Cerebrasプリセールスエンジニアのnakadaです。

今回は、前回のブログ「【巨大ディープラーニングモデルにミッションクリティカルサーバーという選択肢】AIモデル学習にSuperdome Flex× Cerebras」の中で、お話させて頂いたSuperdome Flex 280とCerebrasを使ったPoC検証が完了しましたので、その結果の報告と解説を行います。

なお、本稿は日本ヒューレット・パッカード合同会社様との連載ブログとなっています。
日本ヒューレット・パッカード合同会社様のブログも併せてご覧ください。

また、結果については11月8日に日本ヒューレット・パッカード合同会社様と共同で行ったオンラインセミナーの中でも触れさせていただきましたので、ご存じの方もいらっしゃるかもしれませんが、ご御覧頂けますと幸いです。

POCの写真(Superdome Flex280とCS-2)_TEDブログ

POCの写真(Superdome Flex280とCS-2)

 

■PoC評価の目的と基準

HPE Superdome Flex 280及びCerebras CS-2を利用した際のディープラーニング学習処理時間等の影響を確認することが目的です。評価には、同じハイパーパラメータ設定のディープラーニングモデルを用い、 HPE Superdome Flex 280 2シャーシとCore数ベースで同じ構成の1Uサーバー4台とのパフォーマンス等を比較し、Superdome Flex 280とCerebrasの組合せの優位性を実証します。

 

■PoC環境について

PoC環境は以下の図となります。Superdome Flex 280と比較用のサーバー4台、ストレージ、Cerebras、そしてこれらを接続するネットワークスイッチという構成になります。

PoC環境について_評価環境_TEDブログ

PoC環境について_比較対象機器情報_TEDブログ

注:比較用のサーバーを4台とした理由はCPUコア数を同程度にするためです。

また、評価に用いたディープラーニングモデルとモデルの概要は以下となります。これらのモデルは自然言語モデルで話題となっているGPT(Generative Pretrained Transformer)シリーズとなっており、Cerebrasの性能を十分に発揮できるディープラーニングの巨大モデルとなっております。

PoC環境について_評価用ディープラーニングモデルパラメータ_TEDブログ

  • パラメータサイズ :モデル全体の重み・関数等のパラメータ数(メモリ容量に影響)
  • バッチサイズ :1回に処理するデータ数
  • 実行ステップ :バッチサイズを繰り返す数(1ステップごとにバックプロパゲーションを実行)
  • CS-2モード :PIPELINE・・・モデルを全てロードし計算する。
           :Weight Streamingモード・・・モデルを1層毎にロードし、全層を順次ロードするモード

■検証結果と解説

1.サーバーCPUによる処理時間の比較結果

Cerebrasはネットワークアタッチドアクセラレータという位置づけのため、GPUサーバーのように自身にWindowsやLinuxなどの汎用OSを必要としません。その代わり別途サーバーを必要とします。今回の PoC 検証ではこのサーバーとしてSuperdome Flex 280 と比較用のサーバー 4 台を利用します。サーバーはCerebrasに対し、データセットのインプット、学習経過を記録するCheckpointの保存、そしてCerebras特有処理であるコードコンパイルを行う必要があります。この処理速度はディープラーニング学習時間の一部となるため、処理が速ければ全体の学習時間の短縮にもつながります。

サーバCPUによる処理(時間の比較)_TEDブログ

結果は、コンパイル処理・Checkpoint処理ともにSuperdome Flex(SDFlex)の処理が速い結果となりました。また、パラメータ数の多いGPT3のほうが処理時間の差が大きいことが分かります。これは、Cerebrasが得意とする巨大ディープラーニングモデルでSuperdome Flexを利用することのメリットにもなります。

 

2.トータル学習時間の比較

「1.サーバーCPUによる処理時間の比較結果」で各処理の処理時間を比較しましたが、この差によりトータルの学習時間にも差が出ていることを以下のグラフに示します。

 

トータル学習時間_TEDブログ

結果は、Superdome Flexサーバーを利用したほうが、トータルの学習時間も短くなる結果となりました。なお、今回はPoC検証のため、精度を出すために必要な実行ステップ数(イテレーション数)を試行していません。精度を考慮すると今回利用したステップ数より100倍~1000倍以上の実行ステップが必要です。そのため、この結果の差は、実質的な時間差としては大変大きな差になると考えます。

 

3.SuperdomeFlexサーバー内蔵の「NVMeSSD」と「外部SSDストレージ」でのパフォーマンス比較結果

SuperdomeFlexサーバーには高速なNVMeSSDを多数搭載できます。AI、特にディープラーニングは、巨大モデルでかつ大量のデータを学習させることで精度を上げることができますので、扱うデータ容量はおのずと増加していきます。その際の選択として外部SSDストレージを利用するのか、サーバー内蔵のSSDを利用するのか選択できます。今回の結果はサーバー内蔵の「NVMeSSD」もしくは「外部SSDストレージ」を使った場合にどちらの学習時間が短いかを測定しています。

SDFlexの「NVMeSSD」利用と「外部SSDストレージ」利用_TEDブログ

結果は、Superdome Flexサーバーの内蔵(SDFlex NVMeSSD)のほうが、学習時間が短いという結果となりました。Superdome Flexサーバーの内蔵NVMeSSDにデータセットとチェックポイントのデータを保管することで、外部SSDストレージを利用するよりもディープラーニングモデルの学習時間を短縮することが出来ます。理由としては、外部ストレージを利用した場合は、接続ネットワークがボトルネックになるからです。また、Cerebrasの機能であるWeight Streamingモードの場合は、Superdome Flexサーバーの内蔵NVMeSSDを使うことで、サーバーとCS-2間の通信頻度も大幅に向上するため、このボトルネックによる性能差がより顕在化することになります。

 

■PoC検証結果からのまとめ

今回の結果から、Superdome FlexとCerebrasの構成が日々巨大化するディープラーニングモデルを利用するために、非常に相性が良いということが分かりました。巨大なディープラーニングモデルを利用されている方は、精度向上のためにグリッドサーチ手法によるハイパーパラメータ調整など行っていると思いますが、学習時間が少しでも短くなれば良いのに!と感じている方も多いのではないでしょうか。その解決としてSuperdome Flexと Cerebrasをご検討いただければと思います。また、これから巨大なディープラーニングモデルの利用を検討頂いている方はデファクトスタンダードとなっているGPUサーバーだけではなく、Superdome Flex とCerebrasという選択肢もあるということを検討材料の一つとしてご考慮頂けると幸いです。

以上、いかがでしたでしょうか?本ブログは日本ヒューレット・パッカード合同会社様との連載ブログとして投稿していましたが、今回が最後となります。引き続き日本ヒューレット・パッカード合同会社様との共同PoCは実施する予定ですので、アップロードがあればまた投稿させていただきますので、宜しくお願いします。

また、ブログをお読みになり、Superdome Flex  × Cerebrasにご興味がある方は当社までお問合せ頂ければ幸いです。

 

——————————————————————————————————————————————————————–

【Cerebras × Superdome Flex】連載ブログ
 (全4回)

 

【日本ヒューレット・パッカード合同会社様】

第1弾 【GPUではなく、AI専用プロセッサーという選択肢】AIモデル開発にCerebras×Superdome Flex

第3弾 【Cerebras × Superdome Flex第3弾】 Superdome Flexの特徴に迫る!

 

【東京エレクトロンデバイス】

第2弾 【巨大ディープラーニングモデルにミッションクリティカルサーバーという選択肢】AIモデル学習にSuperdome Flex× Cerebras

第4弾 【Cerebras × Superdome Flex第4弾】Superdome Flex×Cerebras共同検証結果と解説(本ブログ)