Abstract
Hierarchical architectures attempt to provide the benefits of both VLIW/superscalar and MIMD machines by combining multiple VLIW or superscalar processors as parallel, asynchronous processors. An example of these architectures is the Intel Touchstone multicomputer. These machines provide the opportunity to execute a program in parallel at both the machine instruction level and the source statement level.
In this paper, we present some initial results from our research into exploiting hierarchical parallelism with the help of an optimizing compiler. The prototype compiler schedules code for a VLIW/MIMD target architecture. The compiled programs were executed on simulated MIMD and VLIW/MIMD machines. These preliminary results indicate that performing instruction level parallelization on loops that have already been parallelized at the statement level can provide an additional multiplicative speedup in the range of 3.5 to 5.3. Moreover, this factor is independent of the number of VLIW processors used.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Alexander Aiken and Alexandra Nicolau. Optimal loop parallelization. In Proceedings of the 1988 ACM S1GPLAN Conference on Programming Language Design and Implementation, June 1988.
Utpal Banerjee. Unimodular transformations of double loops. In Advances in Languages and Compilers for Parallel Processing, Research Monographs in Parallel and Distributed Computing. MIT-Press/Pitman, 1991.
R. G. Cytron. Doacross: Beyond vectorization for multiprocessors. In Proceedings of the 1986 International Conference on Parallel Processing, pages 836–844, August 1986.
J.A. Fisher. Trace scheduling: A technique for global microcode compaction. IEEE Transactions on Computers, (7):478–490, 1981.
Ki-Chang Kim. Vertical and Horizontal Program Parallelization Techniques. PhD Dissertation, University of California, Irvine, 1991.
Monica S. Lam. Software pipelining: An effective scheduling technique for VLIW machines. In Proceedings ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, pages 318–328, June 1988.
John M. McCormick and Mario G. Salvadori. Numerical Methods in FORTRAN. Prentice-Hall Inc., Englewood Cliffs, New Jersey, 1964.
Alexandru Nicolau. Uniform parallelism exploitation in ordinary programs. In Proceedings of the 1985 International Conference on Parallel Processing, August 1985.
D.A. Padua. Multiprocessors: Discussion of some theoretical and practical problems. PhD Dissertation, University of Illinois at Urbana-Champaign, 1979.
Roni Potasman. Percolation-Based Compiling for Evaluation of Parallelism and Hardware Design Trade-Offs. PhD Dissertation, University of California, Irvine, 1991.
Michael E. Wolf and Monica S. Lam. A loop transformation theory and an algorithm to maximize parallelism. IEEE Transactions on Parallel and Distributed Systems, 2(4):452–471, October 1991.
Michael Wolfe. Data dependence and program restructuring. The Journal of Supercomputing, 4(4):321–344, January 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brownhill, C., Nicolau, A. (1993). A hierarchical parallelizing compiler for VLIW/MIMD machines. In: Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1992. Lecture Notes in Computer Science, vol 757. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57502-2_39
Download citation
DOI: https://doi.org/10.1007/3-540-57502-2_39
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57502-3
Online ISBN: 978-3-540-48201-7
eBook Packages: Springer Book Archive