富士通株式会社は、CPUとGPUの計算リソースを適切に活用可能な「アダプティブGPUアロケーター技術」を開発した。
今回発表された「アダプティブGPUアロケーター技術」は、プログラム処理実行中においても、CPUとGPUを使い分ける技術だ。
複数のプログラム処理を実行中の場合においても、GPUを必要とするプログラム、CPUで処理しても良いプログラムを、高速化率を予測するなどして区別し、優先度の高いプログラム処理に対してリアルタイムにGPUを割り振る。
例えば下図のように、3つのプログラム処理をCPU1台、GPU2台で効率的に行いたい場合、GPUの空き状況に応じてプログラム1と2にGPUを割り振る。

その後、プログラム3のリクエストに応じ、性能計測のためにGPUの割り当てをプログラム1から3に変更し、GPUでの処理高速化の度合いを計測する。
計測の結果、プログラム1より3にGPUを割り当てた方が全体としての処理時間の短縮化につながることが判明したことで、プログラム3にGPUをそのまま割り振り、プログラム1にはその間CPUを割り振る。
プログラム2の終了後はGPUに空きができるため、再度GPUをプログラム1に割り当てており、このような形で、最短でプログラム処理が完了するように計算リソースを割り振ることを実現している。
これにより、GPUを利用するAIや高度な画像認識などのアプリケーション開発において、グラフAIデータを処理するモデルの学習などを素早く実施することが可能になる。
また富士通は、複数のコンピュータを協調動作させ、大規模な計算を行うHPCシステムにおいて、実行中のプログラムの完了を待たずに、複数プログラムの処理をリアルタイムに切り替えることで並行処理を可能にする「インタラクティブHPC技術」も開発した。
従来の制御方式は、各サーバへプログラム実行を切り替える通信を、一つひとつ行うユニキャスト通信を利用しているため、切り替えタイミングのばらつきが発生し、リアルタイムでのプログラム実行の一括切り替えが困難であった。
今回、プログラム実行を切り替える通信に一斉送信可能なブロードキャスト通信を採用することで、従来、性能面への影響から、実用的にはプログラムの実行切り替え間隔は秒単位であったところを、256ノードのHPC環境において100ミリ秒へと短縮でき、リアルタイムでのプログラム実行の一括切り替えを実現した。

なお、適切な通信方式はアプリケーションの要件やネットワーク品質によって変わるため、ブロードキャスト通信による性能向上とパケットロスによる性能低下の度合を鑑みて、最適な通信方式を選択可能だ。
これにより、デジタルツインや生成AI、材料・創薬探索などの分野における、リアルタイム性が求められるアプリケーションを、HPC並みの計算リソースを用いてより高速に実行することが可能になる。
今後、「アダプティブGPUアロケーター技術」については、AI技術を試せる「Fujitsu Kozuchi(code name)-Fujitsu AI Platform」における、GPUが必要な処理において活用していく予定だ。
また、「インタラクティブHPC技術」については、富士通の40量子ビットの量子コンピュータシミュレータにおいて、多数のノードを用いた協調計算を行う部分へ適用予定だ。
さらに、シミュレーションやAI、組合せ最適化問題のアプリケーションを開発、実行可能な「Fujitsu Computing as a Service HPC」や、サーバ間でハードウェア構成を変更可能な技術である「Composable Disaggregated Infrastructure(CDI)」アーキテクチャへの適用も検討していくとしている。
なお、富士通は、これらの技術について、2023年11月12日から米国コロラド州デンバーのコロラドコンベンションセンターにて開催される「SC23」においてデモンストレーションを行うほか、「インタラクティブHPC技術」については、リサーチポスターセッションでも発表する。
無料メルマガ会員に登録しませんか?

IoTに関する様々な情報を取材し、皆様にお届けいたします。