| Separation constraint partitioning: a new algorithm for partitioning non-strict programs into sequential threads |
| Full text |
Pdf
(1.56 MB)
|
| Source
|
Annual Symposium on Principles of Programming Languages
archive
Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
table of contents
San Francisco, California, United States
Pages: 259 - 271
Year of Publication: 1995
ISBN:0-89791-692-1
|
|
Authors
|
|
Klaus E. Schauser
|
Department of Computer Science, University of California, Santa Barbara, Santa Barbara, CA
|
|
David E. Culler
|
Computer Science Division, University of California, Berkeley, Berkeley, CA
|
|
Seth C. Goldstein
|
Computer Science Division, University of California, Berkeley, Berkeley, CA
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 2, Downloads (12 Months): 15, Citation Count: 5
|
|
|
ABSTRACT
In this paper we present substantially improved thread partitioning algorithms for modern implicitly parallel languages. We present a new block partitioning algorithm, separation constraint partitioning, which is both more powerful and more flexible than previous algorithms. Our algorithm is guaranteed to derive maximal threads. We present a theoretical framework for proving the correctness of our partitioning approach, and we show how separation constraint partitioning makes interprocedural partitioning viable.We have implemented the partitioning algorithms in an Id90 compiler for workstations and parallel machines. Using this experimental platform, we quantify the effectiveness of different partitioning schemes on whole applications.
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.
 |
AA89
|
|
| |
ACI+83
|
Arvind, D. E. Culler, R. A. Iannucci, V. Kathail, K. Pingali, and R. E. Thomas. The Tagged Token Dataflow Architecture. Technical report, MIT Lab for Comp. Sci., August 1983.
|
| |
AN90
|
|
| |
BH87
|
|
| |
CGSvE93
|
|
| |
Coo94
|
S.R. Coorg. Partitioning Non-strict Languages for Multi-threaded Code Generation. Master's thesis, Dept. of EECS, MIT, Cambridge, MA, May 1994.
|
| |
CPJ85
|
|
| |
Cul90
|
D.E. Culler. Managing Parallelism and Resources in Scientific Data/tow Programs. Technical Report 446, MIT Lab for Comp. Sci., March 1990. (PhD Thesis, Dept. of EECS, MIT).
|
 |
FOW87
|
|
 |
GKW85
|
|
| |
Gol88
|
|
| |
Gol94
|
|
| |
HDGS91
|
J.E. Hoch, D. M. Davenport, V. G. Grafe, and K. M. Steele. Compile-time Partitioning of a Non-strict Language into Sequential Threads. In Proc. Syrup. on Parallel and Distributed Processing, Dec. 1991.
|
| |
Ian88
|
R.A. Iannucci. A DatMtow/von Neumann Hybrid Architecture. Technical Report TR-418, MIT Lab for Comp. Sci., May 1988. (PhD Thesis, Dept. of EECS, MIT).
|
 |
Jor83
|
|
 |
Kie87
|
|
| |
Myc80
|
|
| |
Nik90
|
R.S. Nikhil. Id (Version 90.0) Reference Manual. Technical Report CSG Memo, to appear, MIT Lab for Comp. Sci., 1990.
|
| |
Nik93
|
|
 |
NPA92
|
|
| |
NRB93
|
|
 |
PC90
|
|
| |
PCSH87
|
Simon L. Peyton Jones , Chris Clack , John Salkild , Mark Hardie, GRIP—A high-performance architecture for parallel graph reduction, Proc. of a conference on Functional programming languages and computer architecture, p.98-112, October 1987, Portland, Oregon, United States
|
| |
Pey92
|
S.L. Peyton Jones. Implementing lazy functional languages on stock hardware: the Spineless Tagless G-Machine. J. Functional Programming, April 1992.
|
| |
Sch94
|
|
| |
SCvE91
|
|
 |
SGS+93
|
Ellen Spertus , Seth Copen Goldstein , Klaus Erik Schauser , Thorsten von Eicken , David E. Culler , William J. Dally, Evaluation of mechanisms for fine-grained parallel programs in the J-machine and the CM-5, Proceedings of the 20th annual international symposium on Computer architecture, p.302-313, May 16-19, 1993, San Diego, California, United States
|
 |
SH86
|
|
| |
SNvGP91
|
Sjaak Smetsers , Eric Nöcker , John van Groningen , Rinu Plasmeijer, Generating efficient code for lazy functional languages, Proceedings of the 5th ACM conference on Functional programming languages and computer architecture, p.592-617, June 1991, Cambridge, Massachusetts, United States
|
 |
SYH+89
|
S. Sakai , y. Yamaguchi , K. Hiraki , Y. Kodama , T. Yuba, An architecture of a dataflow single chip processor, Proceedings of the 16th annual international symposium on Computer architecture, p.46-53, April 1989, Jerusalem, Israel
|
 |
TCS92
|
Kenneth R. Traub , David E. Culler , Klaus E. Schauser, Global analysis for partitioning non-strict programs into sequential threads, Proceedings of the 1992 ACM conference on LISP and functional programming, p.324-334, June 22-24, 1992, San Francisco, California, United States
|
| |
Tra86
|
|
| |
Tra91
|
|
CITED BY 5
|
|
|
|
|
Guy E. Blelloch , Phillip B. Gibbons , Girija J. Narlikar , Yossi Matias, Space-efficient scheduling of parallelism with synchronization variables, Proceedings of the ninth annual ACM symposium on Parallel algorithms and architectures, p.12-23, June 23-25, 1997, Newport, Rhode Island, United States
|
|
|
|
|
|
|
|
|
Xinan Tang , J. Wang , Kevin B. Theobald , Guang R. Gao, Thread partitioning and scheduling based on cost model, Proceedings of the ninth annual ACM symposium on Parallel algorithms and architectures, p.272-281, June 23-25, 1997, Newport, Rhode Island, United States
|
|