ACM Home Page
Please provide us with feedback. Feedback
Automatic partitioning and virtual scheduling for efficient parallel execution
Full text PdfPdf (497 KB)
Source ACM Southeast Regional Conference archive
Proceedings of the 30th annual Southeast regional conference table of contents
Raleigh, North Carolina
SESSION: Session 1C: Operating systems table of contents
Pages: 29 - 36  
Year of Publication: 1992
ISBN:0-89791-506-2
Authors
C. L. McCreary  Auburn University
D. H. Gill  The Mitre Corporation
Sponsor
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 24,   Citation Count: 1
Additional Information:

abstract   references   cited by   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/503720.503736
What is a DOI?

ABSTRACT

The research of this report gives a method for automatic determination and scheduling of parallel modules from an existing sequential computation.In compiling a sequential program for execution on a multiprocessor system, there are four major problems to be solved: [26]1. Analyzing the data dependences and control dependences in the program.2. Identifying parallelism in the program.3. Partitioning the program into grains of sequential tasks.4. Scheduling the tasks on processors.The work of this paper addresses the last three problems. The automatic dependence analysis, the phase that detects where parallelism is constrained, has been studied extensively, and there exist a number of tools (e.g. PAT[3], PTOOL[2], Parafrase[21], Faust[19] and PTRAN[1]) that create data flow and control flow graphs from sequential code. A directed graph is typically used to model the dependence relation. Usually, a node of the graph G = (N,E) represents an operation such as a statement or block of statements, and an edge (u,v) represents the dependence of v on u, forcing the execution of u before v. For both data and control dependence, the key is to represent only essential dependence constraints as edges. This paper assumes that a dependence graph exists and discusses a method for performing the last three tasks on the dependence graph. The technique decomposes the data flow graph into grains of the appropriate size for any underlying homogeneous multiprocessor architecture, determines which grains should be executed in parallel and which must be executed sequentially, and schedules those grains onto processors.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
Allen, R., Baumgartner, D., Kennedy, K., and Porterfield, A."PTOOL: A Semi-Autumatic Parallel Programming Assistant," Proceedings of the 1986 International Conference on Parallel Processing, pp. 721-727.
 
3
Appelbe, W. F. and Smith, K. "PAT: A Retargetable Parallelizing Tool for Fortran" Proceedings of the IEEE 1990 Conference on Software Maintenance. 1990.
 
4
Baxter, J., and Patel, J., "The LAST Algorithm: A Heuristic- Based Static Task Allocation Algorithm," Proceedings of the 1089 International Conference on Parallel Processing, pp. 217-222.
 
5
Berman, F., "Experience with and Automatic Solution to the Mapping Problem', in The Characteristics of Parallel Algorithms, edited by Leah H. Jamieson. Dennis B. Gannon" and Robert J. Doublar, MIT Press. Cambridge, 1987.
 
6
Bokari, S., "On the Mapping Problem". IEEE Transactions on Computers, March, 1981.
 
7
Bomans, L., and Roose, D., Hypercube and Distributed Computers, Elsevier Science Publishers, New York, 1989.
 
8
Carroll, J. M., Thomas J. C. and Malhotra, A.. 1980 "Presentation and Representation in Design Problem-Solving", British Journal of Psychology, 71 (1980). pp. 143-153.
 
9
 
10
 
11
Coffman. E. "Computer and Job-Shop Scheduling theory". New York: John Wiley and Sons, 1976.
 
12
Dongarra, J. J. and Sorensen, D. C.,"SCHEDULE: Tools for Developing and Analyzing Parallel Fortran Programs," in The Characteristics of Parallel Algorithms, edited by Leah tl. Jamieson, Dennis B. Gannon, and Robert J. Doublas, MIT Press, Cambridge, 1987.
 
13
 
14
 
15
 
16
 
17
Fortes, J. A. B. and Moldovan, D. I., "Parallelism Detection and Transformation Techniques Useful for VLSI Algorithms", Journal of Parallel and Distributed Computing, 2 (1985), pp. 277-301.
 
18
Gibbons, P., "A More Practical PRAM Model", International Computer Science Institute, Berkeley, CA. Technical Report TR-89-019,1989.
 
19
 
20
Kim, S., and Browne, S., "A General Approach to Mapping of Parallel Computations Upon Multiprocesanr Architecture," Proceedings of the 1988 International Conference on Parallei Processing, pp. 1-8.
 
21
Kuck, D. H., Kuhn, R. H., Leasure, B. R., and Wolfe M. J., "The Structure of an Advanced Retargetable Vectorizer." In Supercomputers : Design and Applications Tutorial (Hwnng K., ed. ), IEEE Society Press, Silver Spring, MD, pp. 967-74.
 
22
Leirson, C., and Maggs, B., "Communication Efficient Parallel Graph Algorithms", International Conference on Parallel Procesing, 1986, pp. 861-868.
23
24
 
25
McCreary, C. L. and Gill, D. H., "Efficient Exploitation of Cencurrency Using Graph Decomposition," Proceedings of the 1990 International Conference on Parallel Processing.
 
26
27
 
28
Stratum, B., and Berman, F., "How Good Is Good?, Department of Computer Science and Engineering, University of California, San Diego, Technical Report CS90-169, 1990.
29
 
30
 
31
32
 
33
Zima, H. P., Bast, H. J., and Gerudt, H. M. "SUPERB - A Tool for Semi- Automatic MIMD/SIMD Parailelization," Parallel Computing, 6 (1988), pp. 1-18.

Collaborative Colleagues:
C. L. McCreary: colleagues
D. H. Gill: colleagues