富士通は11月9日、GPU(Graphics Processing Unit:画像処理装置)不足に対応するため、CPUとGPUの計算リソースを適切に活用可能な技術「アダプティブGPUアロケーター技術」を開発したことを発表した。GPUを活用したプログラム処理中においても、高い実行効率が見込める処理に対してリアルタイムかつ優先的にGPUを割り振る仕組みとのことだ。

同技術により、ユーザーは先行しているGPUでのプログラム処理が終わるまで待つ必要がなくなる。また、CPUで処理が始まっているプログラムに対してもリアルタイムにGPUへ切り替え可能となるため、高効率なGPU利用が見込めるという。

具体例としては以下の通りだ。3つのプログラム処理をCPU1台とGPU2台で実行する場合、GPUの空き状況に応じてプログラム1と2にGPUを割り当て、その後にプログラム3のリクエストに応じて性能計測のためにGPUの割り当てをプログラム1から3に変更し、GPUでの処理高速化の度合いを計測する。

計測の結果、プログラム1よりも3にGPUを割り当てた方が全体としての処理時間を短縮できると判明したことで、プログラム3にGPUをそのまま割り振り、プログラム1にはその間にCPUを割り振る。

その後、プログラム2の終了後にGPUに空きができるため、再度GPUをプログラム1に割り当て、結果的に最短でプログラム処理が完了するように計算リソースを割り振るのだという。

  • CPUとGPUの割り当て切り替え

    CPUとGPUの割り当て切り替え

同社はまた、複数のコンピュータを協調動作させて大規模な計算を行うHPC(High-Performance Computing)システムにおいて、実行中のプログラムの完了を待たずに複数プログラムの処理をリアルタイムに切り替えて並行処理を可能とする「インタラクティブHPC技術」も発表した。これにより、リアルタイム性が求められるAIやデジタルツインのプログラム実行にも、HPCシステムを利用できるようになった。

従来の制御方式では各サーバへプログラム実行を切り替える通信を一つ一つ行うユニキャスト通信を採用しており、切り替えタイミングのばらつきが発生し、リアルタイムでのプログラム実行の一括切り替えが困難だった。

しかし、プログラム実行を切り替える通信に一斉送信可能なブロードキャスト通信を採用したことで、性能面への影響から実用的にはプログラムの実行切り替え間隔は秒単位であったところを、256ノードのHPC環境において100ミリ秒まで短縮し、リアルタイムでのプログラム実行の一括切り替えを実現できたとのことだ。

なお、適切な通信方式はアプリケーションの要件やネットワーク品質によって変わるため、ブロードキャスト通信による性能向上とパケットロスによる性能低下の度合を鑑みて最適な通信方式を選択可能だとしている。

  • プログラムの実行切り替えに用いる通信方式の違い

    プログラムの実行切り替えに用いる通信方式の違い