|
早稲田大学
笠原 博徳
教授
機関別共同研究
Discovery Saga
論文分野別Discovery Saga
研究テーマDiscovery Saga
協賛企業
共同研究先:University of Yamanashi
Academic
共同研究数 2
Article
1991
Wiley Online Library
Parallel processing scheme of a basic block in a fortran program on oscar
フォートランプログラムの基本ブロックの並列処理スキーム(OSCAR上
Hiroki Honda, Hironori Kasahara, Seinosuke Narita, Satoshi Mizuno
Systems and Computers in Japan
【抄録】
With the development of the supercomputer with multiprocessors, the parallel processing of a Fortran program on the multiprocessor system is considered interesting. This paper proposes a parallel processing scheme for the Fortran program where the assignment unit (task) to the processor is the processing of an arithmetic substitution statement. The implementation and performance evaluation of the proposed scheme on the actual system are reported. In the proposed scheme, the arithmetic substitution statement in the basic block is defined as the task, and the precedence constraints among the tasks due to data dependencies are determined. Based on the derived constraints, the allocation of the tasks to the processors as well as the execution order are determined at the compiling stage, using the multiprocessor scheduling algorithm. Then the codes for the processors are generated and the parallel processing is executed. The proposed scheme was implemented on an actual system and the performance was evaluated. The effect of the parallel processing is manifested. In the conventional loop parallel processing, the effect of the parallel processing cannot be expected for the basic block in the loop or for the basic block of the scalar operation unit outside the loop. On the other hand, it was verified that the parallel processing of those blocks can be realized by applying the proposed method. Copyright © 1991 Wiley Periodicals, Inc., A Wiley Company
【抄録日本語訳】
マルチプロセッサを搭載したスーパーコンピュータの発展に伴い、マルチプロセッサシステム上でのFortranプログラムの並列処理が興味深いと考えられている。本論文では、プロセッサへの割り当て単位(タスク)を算術置換文の処理としたFortranプログラムの並列処理方式を提案する。提案方式の実装と実機での性能評価について報告する。提案方式では、基本ブロックの算術置換文をタスクとして定義し、データ依存性によるタスク間の優先度制約を決定する。この制約をもとに、コンパイル時にマルチプロセッサスケジューリングアルゴリズムを用いて、各プロセッサへのタスクの割り当てと実行順序を決定する。その後、各プロセッサ用のコードを生成し、並列処理を実行する。提案方式を実システムに実装し、性能を評価した。並列処理の効果が現れている。従来のループ並列処理では、ループ内の基本ブロックやループ外のスカラ演算ユニットの基本ブロックに対して並列処理の効果を期待することができない。一方、提案手法を適用することで、それらのブロックの並列処理が実現できることが確認された。著作権 © 1991 Wiley Periodicals, Inc, A Wiley Company
Article
1991
Wiley Online Library
Coarse grain parallelism detection scheme of a fortran program
(Last author)
フォートランプログラムの粗視化並列度検出スキーム
Hiroki Honda, Hironori Kasahara
Systems and Computers in Japan
【抄録】
This paper proposes a scheme for the automatic detection of parallelism among coarse grain tasks (macrotasks) in a Fortran program. In this scheme parallelism is represented as the EXECUTION START CONDITION for each macrotask in a program. This condition is represented by a logical expression that states when, in relation to other macrotasks, the execution of a certain macrotask can be started. This representation aids in scheduling a set of macrotasks onto processors. To construct such an expression, a novel concept called co‐control dependence is introduced. Analyzing co‐control dependence together with control dependence and data dependences among macrotasks, the scheme detects and describes successfully the parallelism among all macrotasks in a program. Copyright © 1991 Wiley Periodicals, Inc., A Wiley Company
【抄録日本語訳】
本論文では、Fortranプログラム中の粗粒子タスク(マクロタスク)間の並列性を自動的に検出する方式を提案する。この方式では、並列性はプログラム中の各マクロタスクの実行開始条件 (EXECUTION START CONDITION) として表現される。この条件は、他のマクロタスクとの関係で、あるマクロタスクの実行をいつ開始できるかを示す論理式で表現される。この表現は、マクロタスクの集合をプロセッサにスケジューリングする際の助けとなる。このような式を構成するために、協調制御依存性という新しい概念を導入した。共同制御依存性をマクロタスク間の制御依存性、データ依存性とともに解析することにより、プログラム中のすべてのマクロタスク間の並列性を検出し、うまく表現することができる。著作権 © 1991 Wiley Periodicals, Inc, A Wiley Company