WEKO3
アイテム
手続き間並列化コンパイラWPPの試作?手続き間SPMD化技術
https://ipsj.ixsq.nii.ac.jp/records/16971
https://ipsj.ixsq.nii.ac.jp/records/169714502b9c3-2db6-4f68-b9a9-fd2f6a5d77b8
| 名前 / ファイル | ライセンス | アクション |
|---|---|---|
|
|
Copyright (c) 1999 by the Information Processing Society of Japan
|
|
| オープンアクセス | ||
| Item type | Trans(1) | |||||||
|---|---|---|---|---|---|---|---|---|
| 公開日 | 1999-12-15 | |||||||
| タイトル | ||||||||
| タイトル | 手続き間並列化コンパイラWPPの試作?手続き間SPMD化技術 | |||||||
| タイトル | ||||||||
| 言語 | en | |||||||
| タイトル | Prototyping of Interprocedural Parallelizing Compiler WPP: Interprocedural SPMD Region Construction and Parallelization | |||||||
| 言語 | ||||||||
| 言語 | jpn | |||||||
| キーワード | ||||||||
| 主題Scheme | Other | |||||||
| 主題 | 発表概要 | |||||||
| 資源タイプ | ||||||||
| 資源タイプ識別子 | http://purl.org/coar/resource_type/c_6501 | |||||||
| 資源タイプ | journal article | |||||||
| 著者所属 | ||||||||
| 新情報マルチプロセッサコンピューティング日立研究室 | ||||||||
| 著者所属(英) | ||||||||
| en | ||||||||
| RWCP Multiprocessor Computing Hitachi Laboratory | ||||||||
| 著者名 |
佐藤, 真琴
× 佐藤, 真琴
|
|||||||
| 著者名(英) |
Makoto, Satoh
× Makoto, Satoh
|
|||||||
| 論文抄録 | ||||||||
| 内容記述タイプ | Other | |||||||
| 内容記述 | プログラミングが容易で 広範囲のプログラムに対して高性能が期待できる共有メモリ型並列機(SPMD)が注目を集めている.しかし 最高性能を得るには 手続きにまたがったデータ依存関係がないことやキャッシュ等のマシン特性を最大限に利用する必要があり 人手では多大な労力を要する.このため 逐次プログラムをSMP向けに自動変換する自動並列化コンパイラへの期待は大きい.我々は 手続き間並列化コンパイラWPP (Whole Program Parallelizer)において 以下の3機能の実現方式を検討し 試作を行っている.:(1)並列起動等の並列処理コードを手続き全体にまたがって削減する手続き間SPMD化 (2)キャッシュ間データ移動を削減するようにループを並列化する手続き間静的アフィニティスケジューリング (3)キャッシュの効果を考慮した静的時刻サイクル数評価を通じて最適なループを並列化する手続き間最適ループ並列化.これかは以下の順序で実現する:まず 並列ループネストを両端に持ち れらの間にはループネストや分岐等がない逐次部分だけがあるSPMDリージョンを手続きにまたがって求める.次に この中で キャッシュ間データ移動が発生しない連続ループ群を1ノードとするループ類グラフを作成する.最後に グラフ上の可能なノードの組合せに対する実行サイクル数を評価し 最小値を与えるループ群を並列化する.予備評価では32プロセッサで50倍の性能向上を得た. | |||||||
| 論文抄録(英) | ||||||||
| 内容記述タイプ | Other | |||||||
| 内容記述 | Symmetric Multi-Processors (SMP) have lately attracted considerable attention because of easy programming and the expectation of getting higher performance for a wide variety of programs. But obtaining the maximum performance by hand requires great efforts because we must make the best use of interprocedural data dependence information and the characteristics of machine resources such as caches. Therefore people are hoping for automatic parallelizing compilers. We have examined and implemented the following three functions on our interprocedural parallelizing compiler WPP (Whole Program Parallelizer): (1) interprocedural SPMD region construction that moves parallel control codes such as thread creations beyond procedure boundaries and reduces them (2) interprocedural static affinity scheduling that parallelizes such loops as reducing data movement among caches, (3) interprocedural optimal loop parallelization that statically evaluates the execution cycles considering the effect of caches and parallelizes the most appropriate loops. The algorithm of these functions is as follows: first, beyond procedure boundaries, WPP finds SPMD regions that include as their first and last parts two parallel loop nests and as the other parts sequential sections without branches or any loop nests. Second, in each SPMD region, WPP finds groups of contiguous loops among which no inter-cache data movement occurs and makes a loop class graph that deals with each group as a node. Lastly, WPP evaluates the execution cycles of every SPMD region for all possible combinations of nodes in the graph and parallelizes the most appropriate loops that provide the minimum cycle. Preliminary evaluation shows 50 times speed-ups were obtained for 32 processors. | |||||||
| 書誌レコードID | ||||||||
| 収録物識別子タイプ | NCID | |||||||
| 収録物識別子 | AA11464814 | |||||||
| 書誌情報 |
情報処理学会論文誌プログラミング(PRO) 巻 40, 号 SIG10(PRO5), p. 82-82, 発行日 1999-12-15 |
|||||||
| ISSN | ||||||||
| 収録物識別子タイプ | ISSN | |||||||
| 収録物識別子 | 1882-7802 | |||||||
| 出版者 | ||||||||
| 言語 | ja | |||||||
| 出版者 | 情報処理学会 | |||||||