廣川 祐太 筑波大学計算科学研究センター 研究員 |
キーワード
スーパーコンピュータ | コデザイン(協調設計) | 高速化 |
[背景]超並列性を持つプロセッサおよびシステムの普及
[問題]超並列システムが持つ性能を十分に活かすことが困難
[貢献]計算科学と連携したシミュレーションのコデザイン(協調設計)による成果と推進
今日のスーパーコンピュータでは,消費電力に対する演算性能(以下,電力効率と呼ぶ)からメニーコアCPUシステムやGPUに代表されるアクセラレータ(演算加速装置)を搭載した超並列システムが広く活用されている.メニーコアCPUやGPUは,消費電力と演算性能が低いコアを一般的なCPUに比べ非常に多数接続したプロセッサで,高い並列処理性能と理論ピーク計算性能を持つ.しかしながら,理論ピーク性能と実性能には大きな乖離があり,実科学アプリケーション(シミュレーションプログラム)が超並列システムの恩恵を得るのは非常に難しい.
これは高性能計算と計算科学の両分野が協力して解決しなければならない問題であり,その手段としてコデザイン(協調設計)が注目されている.コデザインは,高性能計算と計算科学の協調開発による相互発展を狙うもので,今後必須の開発手法となることが予測される.現在,コデザインはフラッグシップ級スーパーコンピュータの利活用プロジェクトで用いられているが,コデザインの実例や実証例は多くない.本研究は,実証によりコデザインの重要性を評価し,最先端の超並列システムにおいて実科学アプリケーションのコデザインがどのように行われるべきか,またいくつかのコデザイン手段とそのトレードオフについて示すことができた.
コデザインはハードウェアとソフトウェア,主体がどちらであるかによって評価方法が異なるが,本研究ではソフトウェアのコデザインに着目した.高性能計算と計算科学のコデザインでは,ソフトウェアの多くは計算科学で実装される実科学アプリケーションで,アプリケーションの開発と計算機への最適化を反復実行する.本研究では,実科学アプリケーションとして電子動力学シミュレーションをターゲットにコデザインを実施した.メニーコアCPUやGPUなどの最先端プロセッサを用いた超並列システムにおいて,コデザインによる最適化と性能評価を行い,各アーキテクチャで得られる性能や記述性,可搬性などの議論から,実科学アプリケーションのコデザイン手法を模索した.
性能とメンテナンス性にはトレードオフがあり,どちらを重要視するかはコデザインにおいて重要な論点である.得られる実性能は,アクセラレータであるGPUが最も良い性能かつ高い電力効率を有している.しかしアクセラレータの利用には新たなプログラミングモデルの導入が必要となり,保守性を阻害してしまう.メニーコアCPUはデファクトスタンダードであるOpenMP + MPIのハイブリッド並列構造を維持可能で,計算科学との協調が容易というメリットがある.実科学アプリケーションにおけるコデザインの実施には,開発とその最適化が同時並行で協調して行われる必要があり,保守や拡張といったメンテナンス性が非常に重要と考えられる.
[貢献]計算科学と連携したシミュレーションのコデザイン(協調設計)による成果と推進
今日のスーパーコンピュータでは,消費電力に対する演算性能(以下,電力効率と呼ぶ)からメニーコアCPUシステムやGPUに代表されるアクセラレータ(演算加速装置)を搭載した超並列システムが広く活用されている.メニーコアCPUやGPUは,消費電力と演算性能が低いコアを一般的なCPUに比べ非常に多数接続したプロセッサで,高い並列処理性能と理論ピーク計算性能を持つ.しかしながら,理論ピーク性能と実性能には大きな乖離があり,実科学アプリケーション(シミュレーションプログラム)が超並列システムの恩恵を得るのは非常に難しい.
これは高性能計算と計算科学の両分野が協力して解決しなければならない問題であり,その手段としてコデザイン(協調設計)が注目されている.コデザインは,高性能計算と計算科学の協調開発による相互発展を狙うもので,今後必須の開発手法となることが予測される.現在,コデザインはフラッグシップ級スーパーコンピュータの利活用プロジェクトで用いられているが,コデザインの実例や実証例は多くない.本研究は,実証によりコデザインの重要性を評価し,最先端の超並列システムにおいて実科学アプリケーションのコデザインがどのように行われるべきか,またいくつかのコデザイン手段とそのトレードオフについて示すことができた.
コデザインはハードウェアとソフトウェア,主体がどちらであるかによって評価方法が異なるが,本研究ではソフトウェアのコデザインに着目した.高性能計算と計算科学のコデザインでは,ソフトウェアの多くは計算科学で実装される実科学アプリケーションで,アプリケーションの開発と計算機への最適化を反復実行する.本研究では,実科学アプリケーションとして電子動力学シミュレーションをターゲットにコデザインを実施した.メニーコアCPUやGPUなどの最先端プロセッサを用いた超並列システムにおいて,コデザインによる最適化と性能評価を行い,各アーキテクチャで得られる性能や記述性,可搬性などの議論から,実科学アプリケーションのコデザイン手法を模索した.
性能とメンテナンス性にはトレードオフがあり,どちらを重要視するかはコデザインにおいて重要な論点である.得られる実性能は,アクセラレータであるGPUが最も良い性能かつ高い電力効率を有している.しかしアクセラレータの利用には新たなプログラミングモデルの導入が必要となり,保守性を阻害してしまう.メニーコアCPUはデファクトスタンダードであるOpenMP + MPIのハイブリッド並列構造を維持可能で,計算科学との協調が容易というメリットがある.実科学アプリケーションにおけるコデザインの実施には,開発とその最適化が同時並行で協調して行われる必要があり,保守や拡張といったメンテナンス性が非常に重要と考えられる.
http://doi.org/10.15068/00153795 博士論文本体(筑波大学学術機関リポジトリ) |
(2019年5月31日受付)