Abstract
Since most program execution time is consumed in loop structure, we propose a data dependency elimination method which extracts maximum parallelism from the sequential loop. This procedure automatically transforms nested loops to nested DOALL loops, thereby reduces data dependency effectively. Conventional studies for extracting the parallelism are focused mostly on a single procedure transition. But almost all programs have potential parallelisms among multiple procedures. Procedure call parallelisms, with only a single loop structure or procedure call, almost all are concerned with the uniform code within the uniform data dependency distance. In this study, we propose an algorithm which can be applied to uniform, nonuniform, and complex data dependency distance among multiple procedures. For the performance evaluation, we compare loop extraction, loop embedding, and procedure cloning using CRAY-T3E. The results show that the proposed algorithm is effective.
This work is supported in part by the Ministry of Information & Communication of Korea
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Reference
Banerjee, U.: Loop Transformations for Restructuring Compilers: The Foundations. Kluwer Academic Publishers, 1993.
Chen, Y-S and S-D Wang: A Parallelizing Compilation Approach to Maximizing Parallelism within Uniform Dependence Nested Loops. Dept. of Electrical Engineering, National Taiwan University, 1993.
Hall, M. W.: Managing Interprocedural Optimization. Ph.D thesis, Dept. of Computer Science, Rice University, 1991.
Hall, M. W., K. Kennedy, and K. S. Mckinley: Interprocedural Transformations for Parallel Code Generation. Technical Report 1149-s, Dept. of Computer Science, Rice University, 1991.
D’Hollander, E. H.: Partitioning and Labeling of Loops by Unimodular Transformations. IEEE Trans. on Parallel and Distributed Systems Vol. 3, No. 4, July, 1992.
Mckinley, K. S.: A Compiler Optimization Algorithm for Shared-Memory Multiprocessors. IEEE Transactions on Parallel and Distributed Systems. 9(8): 769–787, August, 1998.
Punyamurtula, S., and V. Chaudhary: Compile-Time Partitioning of Nested Loop Iteration Spaces with Non-uniform Dependences. In Journal of Parallel Algorithm and Architecture, 1996.
Tzen, T. H. and L. M. Ni: Dependence Uniformization: A Loop Parallelization Technique. IEEE Transactions on Parallel and Distributed Systems, May, 1993.
Wolfe, M. J.: High Performance compiler for Parallel Computing. Oregon Graduate Institute of Science & Technology, 1996.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yu-Sug, C., Hye-Jung, L., Doo-Soon, P., Im-Yeong, L. (2002). Interprocedural Transformations for Extracting Maximum Parallelism. In: Yakhno, T. (eds) Advances in Information Systems. ADVIS 2002. Lecture Notes in Computer Science, vol 2457. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36077-8_44
Download citation
DOI: https://doi.org/10.1007/3-540-36077-8_44
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00009-9
Online ISBN: 978-3-540-36077-3
eBook Packages: Springer Book Archive