本課題の目的は、ITシステム基盤を支える実用技術の一環として超大規模計算タスク群のスケジューリング手法を開発することであり、高精度でスケーブルかつ他の基盤技術との協調を目指しでいる。従来の研究成果であるタスクの実行性能モデリング技術と、それ利用したスケジューリング手法をベースとし、これを発展させる形で研究を行っている。 本年度は実環境の性能変動に対応するため、動的スケジューリングの研究を行った。動的な変動に対し良いスケジューリング長を保ち続けるには変動のたびに静的スケジューリングを再実行する動的再スケジューリング手法が有効であるが、頻繁に変動が生じる実環境ではスケジューリングコストが大きく実用的でない。そこで、変動をトリガーとする従来の手法に対し、タスクの終了をトリガーとする手法を提案した。さらに、スケジューリング結果に大きく影響するタスクの終了時のみをトリガーとすることで、再スケジューリング回数を大幅に削減した。シミュレーション評価の結果、提案手法により再スケジューリング回数が数百分の一に抑えられる一方で、スケジューリング長の悪化は5%程度にとどまった。 また、前年度の成果である大規模ワークフローの縮約手法について、詳細な設計および実装・評価を行った。性能評価の結果、完全縮約可能な場合の必要メモリ量は規模に依らず、ランダムなワークフローで80KB程度、単純な実ワークフローでは2KBであり、100万タスクで200MBほどを必要とする従来手法に対し、大幅に削減できた。 さらに、性能モデルの高性能計算への応用として、多次元配列を時間方向にタイリンゲすることでキャッシュを有効活用する最適化手法を時間発展シミュレーションに適用する際の最適パラメータ推定を行った。京大のT2K Open Supercomputer上で評価した結果、2次元拡散方程式の陽的求解や3次元FDTD法においてほぼ最適なパラメータが得られ、前者ではタイリングを使用しない場合に対して約2倍の速度向上を得ることができた。
|