研究概要 |
平成21年度には、CPU向けの線形代数ライブラリ(Basic Linear Algebra Subroutines, BLAS)とGPU(Graphics Processing Unit)向けのBLASライブラリを自動的に使い分けるための性能予測方法、および性能パラメータ取得方法を検討し、CPUとGPUがお互いに得意な処理の実行のみを担当する実行時プロセッサ選択機付きBLASライブラリを実現した。同ライブラリは本研究代表者らが提案している高水準プログラミング言語からシームレスに利用可能となっており、異種複数のプロセッサを適材適所で活用できるように設計されている。 また、現在GPUの計算能力を利用するために事実上の標準の開発環境として利用されているCUDA(Compute Unified Device Architecture)では、ハードウェアを意識していくつかのパラメータを試行錯誤で設定しなければならない。したがって、GPUの存在を意識することなくその計算能力を利用するためには、それらのパラメータ設定を自動化する必要がある。そのため、パラメータ自動チューニング機能を検討し、上記の高水準プログラミング環境への実装と性能評価を行った。 今後、高性能計算システムはさらに大規模化・複雑化し、膨大な数の計算ノードから構成されるため、そのディペンダビリティの向上が極めて重要である。このため本研究課題ではGPUコンピューティングにおけるディペンダビリティを高めるための検討も行い、CUDAアプリケーション向けチェックポイントリスタート機能を実装・評価した。その結果、CUDAアプリケーションの障害からの復帰やタスクマイグレーションの機能を実現することが可能であることが示された。 さらに、異種複数のプロセッサ向けのプログラミング環境としてOpenCLが利用可能となったことから、それらを活用するための検討も行った。
|