Core Concepts
ステンシル DSL コンパイラ間で共通のコンパイル基盤を構築することで、ドメイン固有の最適化と HPC の概念を共有し、スケーラブルな高性能実行可能ファイルを生成する。
Abstract
本論文は、ステンシル DSL コンパイラ間で共通のコンパイル基盤を構築する手法を提案している。
まず、ステンシル計算を表現する新しい MLIR ダイアレクト(stencil dialect)を導入する。このダイアレクトは、ステンシル計算の幾何学的な分解パターンを表現するための dmp ダイアレクトと、MPI 通信を表現するための mpi ダイアレクトと連携する。
これらのダイアレクトを用いて、Devito、Open Earth Compiler、PSyclone の3つのステンシル DSL コンパイラのコンパイルフローを統合する。各 DSL は独自のユーザーインターフェースを持ちつつ、共通の最適化基盤を活用できるようになる。
具体的には以下の通り:
stencil ダイアレクトを用いて、ステンシル計算の抽象的な表現を共有する
dmp ダイアレクトを用いて、ステンシル計算の分散メモリ並列処理を表現する
mpi ダイアレクトを用いて、MPI 通信を表現する
これらのダイアレクトを用いて、Devito、Open Earth Compiler、PSyclone の3つのステンシル DSL コンパイラのコンパイルフローを統合する
統合されたコンパイルフローにより、共通の最適化基盤を活用し、CPU、GPU、FPGA上で高性能な実行可能ファイルを生成できる
Stats
ステンシル計算の幾何学的な分解パターンを表現するための dmp ダイアレクトを導入した
MPI 通信を表現するための mpi ダイアレクトを導入した
Devito、Open Earth Compiler、PSyclone の3つのステンシル DSL コンパイラのコンパイルフローを統合した