2019 Fiscal Year Annual Research Report
大規模グラフで表現された不規則・複雑な対象を高速にシミュレーションする方法の研究
Project/Area Number |
15H01687
|
Research Institution | Osaka University |
Principal Investigator |
萩原 兼一 大阪大学, 情報科学研究科, 招へい教授 (00133140)
|
Co-Investigator(Kenkyū-buntansha) |
伊野 文彦 大阪大学, 情報科学研究科, 教授 (90346172)
置田 真生 大阪大学, 情報科学研究科, 准教授 (50563988)
|
Project Period (FY) |
2015-04-01 – 2020-03-31
|
Keywords | 超高速情報処理 / アルゴリズム / 生体機能シミュレータ / 自動並列化 / データアクセス / GPU / パラメータスイープ |
Outline of Annual Research Achievements |
シミュレーションでは各種パラメータを変更して実行し、最適なパラメータを求めることが重要である。そのために、パラメータ値を変えながら大量のシミュレーションを繰り返すパラメータスイープ(PS)という手法が必要である。行列計算プログラムは規則的にメモリアクセスすることが多いのでプログラムを効率的にすることが比較的容易であるが、本研究では規則的でないメモリアクセスをする生体機能シミュレーションプログラムを対象とし、パラメータ最適化を効率的に実行できるGPUプログラムの自動生成に取り組んだ。このとき、複数のシミュレーションを結合して同時並列的に実行することで、常に規則的な計算パターンが生じる点に注目する。これを利用することで、不規則なアクセスパターンを含むシミュレーションプログラムを個別に実行するよりも、メモリアクセス効率が良く高速なプログラムを実現できる。 具体的には、前年度までに開発した生体モデルから自動的にGPUプログラムを生成する技術と、GPU上で複数回のPSを統合して一括実行する既存の技術を組み合わせて、複数パラメータ値のシミュレーション実行を統合したGPUバルク実行プログラムを自動生成する手法を開発した。さらに、GPUバルク実行プログラム特有の性能特性に注目し、実行効率を改善する手法を研究した。バルク実行において発生する計算パターンごとにGPUスレッドに割り当てるタスクの大きさを調整することで高速化を実現できるが、この問題は組み合わせ最適化に帰着する。そこで、対象シミュレーションが一連の同じ計算の反復である点を利用し、ヒューリスティックな解の探索と試行をシミュレーション中に繰り返すことで、タスクサイズを動的に調整する手法を開発した。複数のモデルに対し適用した結果、単純な細粒度タスクを用いた場合の実行時間と比較して、開発した手法は最大で1.67倍の性能向上を達成した。
|
Research Progress Status |
令和元年度が最終年度であるため、記入しない。
|
Strategy for Future Research Activity |
令和元年度が最終年度であるため、記入しない。
|