This Article 
 Bibliographic References 
 Add to: 
Synthesizing Nested Loop Algorithms Using Nonlinear Transformation Method
July 1991 (vol. 2 no. 3)
pp. 304-317

FOR-loops are the main source of parallelism in programs. A nonlinear transformation algorithm for parallelizing the execution of FOR-loop models is proposed. It is shown that by the mapping of nonlinear transformation, iterations of FOR-loops can be executed in a parallel form. The algorithm is useful in exploiting the parallelism of FOR-loops with one or more partitions on the innermost loop. Algorithms to partition and map the nested FOR-loops onto fixed size systolic arrays are discussed. Based on the time and space mapping schemes, all the iterations of FOR-loops can be correctly executed on the array processors in a parallel form.

[1] U. Banerjee, S. H. Chen, and D. J. Kuck, "Time and parallel processors bounds for Fortran-like loops,"IEEE Trans. Comput., vol. C-28, pp. 660-670, Sept. 1979.
[2] Z. Chen and C. C. Chang, "Iteration-level parallel execution of DO loops with a reduced set of dependence relations,"J. Parallel Distributed Comput., vol. 4, pp. 488-504, 1987.
[3] Guerra and Melhem, "Synthesis of systolic algorithm design,"Parallel Comput., vol. 12, pp. 195-207, 1989.
[4] R. W. Heuft and W. D. Little, "Improved time and parallel processors bounds for Fortran-like loops,"IEEE Trans. Comput., vol. C-31, no. 1, pp. 78-82, Jan. 1982.
[5] D. J. Kuck, Y. Muraoka, and S. C. Chen, "On the number of operations simultaneously executable in Fortran-like programs and their resulting speedup,"IEEE Trans. Comput., vol. C-21, Dec. 1972.
[6] L. Lamport, "The parallel execution of DO loops,"Commun. ACM, vol. 17, no. 2, pp. 83-93, Feb. 1974.
[7] P. Lee and Z. M. Kedam, "Synthesizing linear array algorithms from nested for loop algorithm,"IEEE Trans. Comput., vol. 37, pp. 1578-1598, Dec. 1988.
[8] P. Lee and Z. M. Kedam, "Mapping nested loop algorithms into multi-dimensional systolic arrays," inProc. 1989 Int. Conf. Parallel Processing, vol. III, 1989, pp. 206-210.
[9] T. C. Lin and D. I. Moldovan, "Tradeoffs in mapping algorithms to array processors," inProc. 1985 Int. Conf. Parallel Processing, 1985, pp. 719-726.
[10] L. S. Lin, C. W. Ho, and J. P. Sheu, "On the parallelism of nested forloops using index shift method," inProc. Int. Conf. Parallel Processing, vol. 2, 1990, pp. 119-123.
[11] D. I. Moldovan and J. A. B. Fortes, "Partitioning and mapping algorithms into fixed size systolic arrays,"IEEE Trans. Comput., vol. C-35, pp. 1-12, Jan. 1986.
[12] M. Wolfe and Kuck, "Advanced loop interchanging," inProc. 1986 Int. Conf. Parallel Processing, 1986, pp. 536-543.
[13] D. A. Padua, D. J. Kuck, and D. H. Lawrie, "High-speed multiprocessors and compilation techniques,"IEEE Trans. Comput., vol. C-29, pp. 763-776, Sept. 1980.
[14] D. A. Padua and M. J. Wolfe, "Advanced compiler optimizations for supercomputers,"Common. ACM, vol. 29, no. 12, pp. 1184- 1201, Dec. 1986.
[15] J. K. Peir and Cytron, "Minimum distance: A method for partitioning recurrences for multiprocessors,"IEEE Trans. Comput., vol. 38, Aug. 1989.
[16] C. D. Polychronopoulos, D. J. Kuck, and D. A. Padua, "Utilizing multi-dimensional loop parallelism on large-scale parallel processor systems,"IEEE Trans. Comput., vol. 38, Sept. 1989.

Index Terms:
Index Termsnested loop algorithms; nonlinear transformation method; FOR-loop models; nestedFOR-loops; fixed size systolic arrays; space mapping schemes; array processors; parallelform; parallel algorithms; parallel programming
J.P. Sheu, C.Y. Chang, "Synthesizing Nested Loop Algorithms Using Nonlinear Transformation Method," IEEE Transactions on Parallel and Distributed Systems, vol. 2, no. 3, pp. 304-317, July 1991, doi:10.1109/71.86106
Usage of this product signifies your acceptance of the Terms of Use.