並列プログラム生成系Flintにおけるメモリ参照効率のよいSX-ACEプログラムの生成

 

氏名:置田 真生,石田 祐二郎,萩原 兼一

所属:大阪大学 大学院情報科学研究科

概要:Flintは生体機能を表現する数理モデルを入力として,並列実行可能なシミュレーションコードを生成する.多様な並列環境に応じた実行効率の高いシミュレーションの実現を目指している.本研究の目的は,SX-ACE上で実行効率の高いコードを生成するようFlintを拡張することである.Flintは不規則な参照パターンを含むプログラムに対するベクトル化効率を最大化するため,配列の間接参照を多用したコードを生成する.依存関係を明示することで間接参照のベクトル化が可能であるが,直接参照と比較するとメモリ参照のコストが大きい.
そこで本研究では,参照パターンを解析し不必要な間接参照を自動的に削減する手法を提案する.さらに,間接参照が減少するようにデータ配置とベクトル化されるループ内の参照順を最適化する.
心筋細胞の膜電位モデルから生成したコードに対して,提案手法はSX-ACE上の実行時間を最大25%削減した.手法の適用前後で,メモリバンド幅ピーク性能比は15%から20%に向上した.

 




Posted : 2018年03月01日