Font Size: a A A

The Data Distribution Of Global Optimization Technique

Posted on:2000-07-18Degree:DoctorType:Dissertation
Country:ChinaCandidate:X B FengFull Text:PDF
GTID:1118360185495550Subject:Computer Organization and Architecture
Abstract/Summary:PDF Full Text Request
Developing high performance parallel software is important for using parallel systems efficiently. A good parallel compiler is very useful for parallel software development The global optimization of data distribution and loop partitioning strategy decides the performance of parallel programs, especially for distributed memory systems. Two important issues must be resolved for optimizing data distribution: one is how to find more parallel loops in a program, the second is how to derive a parallel optimizing strategy based on the analysis of the whole program and reduce the cost of communication. These are current researching focuses. In this paper, we give a framework for global optimizing of data distribution and loop partitioning. Our work is a part of a parallel compiler for distributed memory system. The main contributions of this paper are:1) Defines a set of program language directives and implement them. Our experience show program performance can be improved distinctly by using these directives, such as REDUCTION.2) Discusses conditions of communication existing in a program. The alignment relationships between an array and a loop or two arrays are essential for communication analysis. Gives a simple method for estimating communication cost on Dawning-2000 system.3) Presents a PAIG(Program Alignment Information Graphic) which is used to describe the alignment information in a program, these information are the basement of deriving a global optimizing strategy for data distribution and loop partitioning. In addition, a group of algorithms are designed to find alignment relationships in a program.4) An intra-procedure optimizing algorithm for data distribution and loop partitioning is given. Letthe strategy of data distribution and loop partitioning satisfy the alignment relationships of the program, this is the main idea of the algorithm5) In intra-procedure analysis, loop pipeline execution is an important method for global optimizing data and loop partitioning.6) Designs a framework of inter-procedure parallel optimizing and implements it By using the procedure clone technology, a procedure callsite will be instantiated according to the calling contexts. Data distribution information's transformation is a key step of inter-procedure analysis.7) These ideas are used in the design and implementation of a parallel compiler. The experimental results demonstrate that these algorithms can improve the performance of marry programs.
Keywords/Search Tags:Parallel optimization, Data distribution, Loop partitioning, Programming language extension, Interprocedure analysis, Procedure instantiation
PDF Full Text Request
Related items