著者
川端 英之 上甲 聖 津田 孝夫
出版者
一般社団法人情報処理学会
雑誌
情報処理学会研究報告計算機アーキテクチャ(ARC) (ISSN:09196072)
巻号頁・発行日
vol.2000, no.23, pp.161-166, 2000-03-02

大規模数値シミュレーションの一つである粒子輸送コードに代表される、データパラレル指向の並列化に馴染まないアプリケーションに対し、リダクション演算の検出および並列化変換を中心とした自動並列化を施す処理系を開発した。本処理系の特徴は、その強力なリダクション演算検出機能である。従来のリダクション認識手法では解析が困難であった、多重ループ中に複数存在するリダクション演算の認識、及び、配列リダクション変数の検出機能を持つ。間接参照される配列も解析対象である。リダクション認識の過程で、並列化可能性の検査も同時に行なえる。本処理系のリダクション検出アルゴリズムはSSA形式による表現に基づくもので、直接的で簡明であるため、実装も容易である。粒子輸送コードなどに適用し、本手法の有効性を確認した。Particle Transport Code is one of huge-scale Monte Carlo simulation codes. From the nature of the physical model it reflects, there exist parallelism in Particle Transport Code. However, complicated control structures and numbers of reduction operations contained in multiply nested loops in such a code prevent it from being parallelized easily. In this paper, we present algorithms to recognize reduction operations in multiply nested loops. The algorithms can also detect arrays used as reduction variables which are referenced by subscripted subscripts. Experimental results show the technique is effective.