世界のスーパーコンピュータとそれを動かす人々


11月 22, 2023

HPC向けAI加速技術投資ガイドライン

HPCwire Japan

Rob Farber オリジナル記事はこちら

AIやHPCへの投資を計画する際、アプリケーションは肝心要のところであり、最終的にハードウェア投資の利益を決定する。さらに、計算性能に関心を持つ人は、現在、ハードウェア・アクセラレータのユビキタス性と、高いアプリケーション性能を実現するためにそれらを使用する必要性を考慮しなければならない。

このようなヘテロな 環境の課題を考慮すると、AIとHPCテクノロジーへの投資において、アプリケーションのパフォーマ ンスカーブの頂点に立ち続けるために考慮すべき一定のガイドライン(図1に要約)がある。基本的な考え方は、「ワークロード領域のリーダーに従う」ことだ。このリーダーとは、DOE、NOAA、エクサスケール・コンピューティング・プロジェクト(ECP)、Ansysなどのテクノロジー・リーダーであり、多くの異種、マルチベンダー、マルチアーキテクチャー・コンピューティング・デバイス間で信頼性と移植性を持って実行できるワークフローを作成または修正するための資金とリソースの両方を提供している。

最初に、より具体的な提言のための背景を説明する:

  • ムーアの法則のゴードン・ムーアによって予言された、ヘテロジニアスでカスタマイズされたソリューション[1]を組み合わせて、より小さな機能からより大きなシステムを構築する必要がある、運命の日に我々は今いる。専門家は今、我々は分散コンピューティングの第5のエポックに入っていると考えており、最新のシステムのヘテロジニアスな設計は、多くの技術の進歩によって推進されている。これらのAIビルディング・ブロックと、それらがサポートするAIテクノロジーは、現在HPCコミュニティで広く利用されている。
  • データセンターとクラウドにおけるユビキタス・マルチ・アーキテクチャーとマルチベンダー・アクセラレーターのデプロイメントに対するアプリケーション・サポートという、指数関数的に難しくなる問題に対処するための、さまざまなソフトウェア・アプローチがある。現在利用可能なベンダー固有のアクセラレータが山ほどあることを考えると、競争はパフォーマンスの助けになる。インテル、AMD、エヌビディア、ザイリンクス、ハバナ、グーグルなどのソリューション・ファミリー全体は、市場が個々のアクセラレーターや単一ベンダーのソフトウェア・エコシステムに対する断片的な最適化を卒業したことを意味する。デプロイメントの幅とワークロードの多様性は、単純に大きすぎる。どんなに大きな企業でも、顧客のニーズをすべて満たすことはできない。その代わり、コミュニティによるエコシステムの開発努力や、DOEが資金を提供するエクサスケール・コンピューティング・プロジェクト(ECP)の広範かつ長年にわたる努力によって、標準ベースのライブラリや言語を通じて、現在および将来の加速器デバイス上で実行するための実用的なソリューションが提供されている。

ワークロード領域のリーダーを追え

加速コンピューティングの第5エポックへの移行において、私たちは皆同じ課題に直面している。多くのオピニオン・リーダーが、これらのハードウェア・ソリューションを活用するためのガイドラインについて考察している。

最近開催されたNASAとDOEのエクサスケール・コンピューティング・プロジェクト・バーチャルワークショップは、2つの主要なHPC組織のリーダーが、ユーザーベースのニーズにどのように取り組んでいるかを示す優れた例となった。参加者は、コンピューティングの現状を取り巻く問題と、既存および将来のハードウェアの進歩を活用する方法について議論した。これらのオピニオンリーダーや他のオピニオンリーダーによる簡単な概要は、以下のガイドラインに反映されている:

  • 確立された技術リーダー(NNSA、NASA、ECP、アルゴンヌ、Googleなど)に目を向ける。これらの組織は、ポータブルで持続可能な方法で、スケールの大きなコンピューティングに取り組むことができる(しなければならない)。個々のプロジェクトでは、そのようなリソースや最新のハードウェアを利用することはできない。
  • 変革の障害となりがちな考え方に対処する: 「ここで発明されたものではない」、「私たちが管理しなければならない」、「もし彼らが変わったりサポートをやめたりしたらどうするのか」などの懸念がある。
  • トレーニング、文書化、配備など、組織レベルで発生する疑問については、テクノロジーだけにとどまらない。採用の障壁は、ソース間の翻訳ツールも含め、過度な労力やコストをかけずにソフトウェア技術を採用できるほど低くなければならない。「データが組織内にしか流れない組織(金融機関、国防総省、国家安全保障など)は、優れた模範となり得る。そのような組織は、外部からの支援を求めることができないか、あるいは求めようとしない。このような組織は、公共ソリューションの採用の成否を通じて、採用の容易さを示す良い指標を提供することができる。」

マルチベンダー、マルチアーキテクチャーのサポートが実証された汎用エコシステムに焦点を当てる

フレームワークの汎用性の程度は、ワークロード領域によって異なる。ほとんどのワークロードドメインは、汎用、ドメイン固有、アプリケーション固有の3つのカテゴリのいずれかに当てはまる。ほとんどのHPCユーザーは、進化し続ける、そして一般的に極端なユーザーニーズに対応する能力を与える汎用フレームワークを必要とする。

また、さまざまなプログラミングモデルやランタイムが、幅広いマルチアーキテクチャHPCプラットフォームのサポートに取り組んでいる。Kokkosはその一例である。よりアプリケーションやドメインに特化したソリューションもある。例えば、データサイエンティストは一般的に、AIワークロードの幅広いアクセラレータサポートのために、PyTorchTensorFlowにしか目を向けていない。商用ユーザーも、幅広いハードウェア・サポートを実現するために、Ansysのような業界リーダーやアプリケーション・プロバイダに注目している[2] [3]。

現時点では、量産品質のフレームワークを提供する2つの最も汎用的なソリューションは、oneAPIエコシステムと、Spackパッケージ・マネージャー経由で利用可能なECPエクストリーム・スケール・ソフトウェア・スタックE4S)と思われる。

ECPとE4Sプロジェクトは、ラップトップからエクサスケールのスーパーコンピューターまで、クラウドを含むさまざまなシステムで動作するHPCとAIユーザーに利益をもたらすために作成された。 この取り組みは、米国および世界のHPCコミュニティに非常に注目され、確実に影響を与えるプロジェクトとなった。このプロジェクトは、多くの「教訓」をもたらした[4]。

マイク・ヘルー氏(サンディア国立研究所ソフトウェア技術部長)は、「100X:米国エクサスケール・コンピューティング・プロジェクト投資の将来的可能性の活用」というプレゼンテーションの中で、このことをさらに詳しく説明した。簡単に説明すると、ヘルー氏はECPについて次のように述べた:

  • 7年をかけて、クラウド対応のソフトウェア・エコシステムを構築した。
  • 複数のベンダーのアクセラレータを利用できるようにユーザーを位置づけた。
  • ソフトウェアの品質を重視:テスト、文書化、設計など。
  • コミュニティへの参加を優先: ウェビナー、BOF、チュートリアルなど。
  • DOEのポータビリティレイヤーは、複数のGPUにまたがって持続可能なコードを構築し、ベンダーのロックインを回避し、個々のコードベースにおける乖離の拡大とハンドチューニングを回避するための信頼できる方法であることを確立した。
  • アクセラレーション・プラットフォームのコスト削減と性能向上を可能にするソフトウェアを提供した。
  • 商用、AI、HPCアプリケーションのために他が使用し、エミュレートすることができる多くのクラスのアプリケーションと機能のプルーフポイントを可能にした。

テクノロジーへの投資を検討している人々にとって、ECPの取り組みは、ベンダーに中立的な、第三者による性能評価のユニークな情報源を提供する:以下のようなものである:

  • 現世代の米国スーパーコンピュータにおけるアクセラレータ性能の専門家による評価を含む。
  • 個々のノードとアクセラレータにおける oneAPI の性能、および実行可能性(継続的統合テストに合格する能力など)と精度を評価する。
  • 超大規模、異種、マルチアーキテクチャー、分散コンピューティング環境において、ネイティブ、シングルベンダーソフトウェアの移植性と性能に対するoneAPIの第三者評価を提供する。

容易なデプロイは必須

デプロイが簡単であることは、必ず必要な機能のリストのトップである。導入が簡単であれば、更新も容易であるため、プロジェクトが「古くなったソフトウェア」に埋もれてしまうこともない。

E4Sソフトウェア・スタックは、ECPソフトウェアへの幅広い投資を、ソース・パッケージとバイナリのみのパッケージの両方で、簡単に導入できるようにする。これらのソフトウェア・パッケージには、多数の米国国立研究所の専門家チームによる7年間の研究が凝縮されている。このソフトウェア・スタックは、アクセラレータ・フレンドリーで、パフォーマンス・ポータブルであり、多くのシステムで動作することが検証されている。(現在のスナップショットについては、E4Sダッシュボードをご覧ください)。ECPソフトウェアは、オープンソースソフトウェアと寛容なライセンスにより、世界中の科学コミュニティに提供されている。

共に働く

これらのコンセプトはどれも新しいものではないし、特定の個人や組織独自のものでもない。私たちは皆、より良く、より速く、より安くアプリケーションを実行するために協力し合うという共通のニーズによって、コミュニティ・エコシステムによって対処される共通の課題に直面している。

トッド・ガンブリン氏(ローレンス・リバモア国立研究所のリバモアコンピューティング部門の特別技術スタッフであり、Spackの開発者)はこのように要約している: 「他人が開発したコードに依存し、ビルドし、実行しなければなりません。そうでなければ、再実装に時間を費やさなければならないからです。ソフトウェア・スタックが正しく動作することを保証するのは難しい作業です。OSのアップデートは、ソフトウェアの再構築に何百人もの時間を費やすことになります。」

図2(出典)に示すLLNL ARESプロジェクトの依存関係グラフは、この分野のリーダーたちが、現在および将来のハードウェアシステムの加速されたハードウェア性能をすべて利用するために、ポータビリティとスケールの両方で協力する必要性にすでに対処していることを例証している。

(編集者注:図2を理解するには、詳細ではなく、LLNL内部、LLNLオープンソース、外部オープンソースといったパッケージの種類と大規模な組み合わせに注目してください。)

図2:LLNLマルチブロック構造化ALE-AMR(ARES)マルチフィジックスコードのパッケージ依存グラフ: 31が内部専用パッケージ、13がLLNLで開発されたオープンソースパッケージで、これらを合わせて72の外部オープンソースソフトウェアパッケージに依存している

 

ワークフロー全体が利用可能なすべての並列性を活用できるようにする

ハードウェア性能の向上と、それに伴うデータ量の増加、およびワークロードの複雑化により、既存のワークフローシステムには困難が伴うことが判明している。ECPが資金を提供するExaWorksプロジェクトは、科学者がハード化されテストされたワークフローコンポーネントにアクセスすることで、受賞歴のあるワークフローを作成することが可能であることを実証している。プロジェクトでは、ExaWorksソフトウェア開発キット(SDK)を使用して、データセンターで複数の並列レベルを利用できるビッグデータワークフローを実装する。

クラウドを活用して最新のハードウェアを評価・実行

現在のAIおよびHPC市場において、所定のソフトウェア投資に対して適切なテクノロジーを見つけることは困難だ。このイノベーションの津波の最先端にとどまるための鍵は2つある:(1) ベンダーやソフトウェアのロックインを避けて機敏に動くこと、(2) 常にワークフロー全体を考慮すること。多くのAIやHPCワークロードでは、ピーク性能ではなく、メモリ帯域幅と容量が評価基準となる[5]。

もちろん、ソフトウェアフレームワークはクラウドコンピューティング環境に展開できなければならない。oneAPIECPソフトウェアも、クラウドにデプロイできる。

これにより、最新のハードウェアでのテストへの道が開かれる。AWSやGoogleのような多くのインターネット・サービス・プラットフォームも、インテル、AMD、エヌビディアの最新ハードウェアを提供することで競争しており、このようなISPは新しいハードウェアを評価するための優れたテストプラットフォームとなっています。さらに、クラウド・コンピューティングは、プロダクション・コンピューティング用のAIおよびHPCプラットフォームとして、ますます現実的になってきている。

実際のパフォーマンス・データに代わるものはない

パフォーマンス・データについては、ECPやその他の第三者機関に注目しよう。以下は、実地評価の機会を含め、考えられる4つの情報源である:

1.クラウドは一般に利用可能なプラットフォームであり、誰もが最新のハードウェアの実際の性能データを入手できる。

  • 例えば、多くのISPは現在、最新のインテル第4世代アクセラレーション・プロセッサへのアクセスを提供している。これらの新しいプロセッサは、多くのGPU処理要件を見直すきっかけとなっており、多くのマルチフィジックスやAIワークロードにとって望ましいプラットフォームとなり得る[6] [7] [8]。内蔵アクセラレーターとともに、これらの CPU は高帯域幅メモリー(HBM)をサポートする最初の CPU である。ベンチマークによると、これらの CPU は、従来「GPU 専用」であった AI ワークロードの一部で GPU レベルの性能を発揮できることが示されている。また、前世代のプロセッサーと比較して、全体的に2倍から3倍高速なHPC性能を実現することも示されている[9]。
  • E4Sコンテナには、インテル・コンパイラとMPIライブラリに加え、エヌビディアとAMDの各種ツールが含まれるようになった。これにより、ユーザーはこれらのコンテナを使用して、oneAPI、ECPソフトウェアスタック、および他のベンダー製品を調査することができる。

2.HPCグループは、サミール・シェンデ氏(オレゴン科学社会高等コンピューティング研究所のパフォーマンス研究所の研究教授兼所長)に連絡すれば、フランク・クラスターにアクセスできる。このクラスターはE4Sの検証に使用されており、NDAの対象外の最新のハードウェアにアクセスすることができる。

3.よりエキゾチックなハードウェアについては、アルゴンヌ・リーダーシップ・コンピューティング・ファシリティ(ALCF)のAIテストベッドが、科学研究用の次世代AIアクセラレータマシンをテストするためのインフラを提供している。ユーザーは、Habana Gaudiのようなディープラーニング専用ハードウェアを含むこれらのデバイスの性能について、時間のリクエストや専門家のレビューを行うことができる。

まとめ

彼らは、あなたのニーズに合ったサポート可能なソフトウェアフレームワーク内で、新しいアクセラレータの有効性と移植性を実証するための投資を行っている人たちだ。可能な限り、投資に値するかもしれないハードウェア・デバイスに関するサードパーティの情報源を見つけ、可能であれば、ハードウェア上で独自のテストを実行する。現時点では、ECPソフトウェアスタックとoneAPIソフトウェアエコシステムが、HPCおよびAIコミュニティにとって最も一般的で、容易に入手でき、広範囲に評価されたフロントランナーのアプローチとなっている。

参考文献
[1] https://www.theregister.com/2022/09/28/intel_chiplets_advanced_packaging/

[2] https://insidehpc.com/2022/11/recent-results-show-hbm-can-make-cpus-the-desired-platform-for-ai-and-hpc/

[3] https://medium.com/@rmfarber/balancing-high-bandwidth-memory-and-faster-time-to-solution-for-manufacturing-bd2b4ff7f74e

[4] https://www.exascaleproject.org/reports/

[5] https://medium.com/@rmfarber/balancing-high-bandwidth-memory-and-faster-time-to-solution-for-manufacturing-bd2b4ff7f74e

[6] https://community.intel.com/t5/Blogs/Products-and-Solutions/HPC/High-Bandwidth-Memory-Can-Make-CPUs-the-Desired-Platform-for-AI/post/1434192

[7] https://medium.com/@rmfarber/balancing-high-bandwidth-memory-and-faster-time-to-solution-for-manufacturing-bd2b4ff7f74e

[8] https://www.datasciencecentral.com/internal-cpu-accelerators-and-hbm-enable-faster-and-smarter-hpc-and-ai-applications/

[9] https://community.intel.com/t5/Blogs/Products-and-Solutions/HPC/High-Bandwidth-Memory-Can-Make-CPUs-the-Desired-Platform-for-AI/post/1434192


ロブ・ファーバー氏は、HPCおよび機械学習テクノロジーに豊富な経験を持つグローバル・テクノロジー・コンサルタントであり、著述家でもある。

本記事は、インテルの編集プログラムの一環として制作されたもので、先端技術を通じてHPCおよびAIコミュニティが推進する最先端の科学、研究、イノベーションを紹介することを目的としている。コンテンツの発行元が最終的な編集権を持ち、掲載される記事を決定する。