This Article 
 Bibliographic References 
 Add to: 
Dependence Uniformization: A Loop Parallelization Technique
May 1993 (vol. 4 no. 5)
pp. 547-558

Data dependence uniformization, a method for overcoming the difficulties in parallelizing a doubly nested loop with irregular dependence constraints is proposed. This approach is based on the concept of vector decomposition. A simple set of basic dependences is developed from which all dependence constraints can be composed. The set of basic dependences is added to every iteration to replace all original dependences so that the dependence constraints become uniform. An efficient synchronization method ispresented to obey the uniform dependence constraints in every iteration.

[1] P. Tang and P.-C. Yew, "Processor self-scheduling for multiple-nested parallel loops," inProc. 1986 Int. Conf. Parallel Processing, Aug. 1986, pp. 528-535.
[2] C. Polychronopoulos and D. Kuck, "Guided self-scheduling: A practical scheduling scheme for parallel supercomputers,"IEEE Tran. Comput., 1987.
[3] Z. Fang, P.-C. Yew, P. Tang, and C. Q. Zhu, "Dynamic processor self-scheduling for general parallel nested loops,"IEEE Trans. Comput., vol. 39, pp. 919-929, July 1990.
[4] T. H. Tzen and L. M. Ni, "Dynamic loop scheduling for shared-memory multiprocessors," inProc. 1991 Int. Conf. Parallel Processing, vol. II, Aug. 1991, pp. 247-250.
[5] T. H. Tzen and L. M. Ni, "Trapezoid self-scheduling: A practical scheduling scheme for parallel compilers,"IEEE Trans. Parallel Distributed Syst., vol. 4, no. 1, pp. 87-98, Jan. 1993.
[6] R. Cytron, "Doacross: Beyond vectorization for multiprocessors," inProc. 1988 Int. Conf. Parallel Processing, Aug. 1986, pp. 836-844.
[7] S. P. Midkiff and D. A. Padua, "Compiler algorithms for synchronization,"IEEE Trans. Comput., vol. C-36, no. 12, pp. 1485-1495, Dec. 1987.
[8] M. Wolfe,Optimizing Supercompilers for Supercomputers. Cambridge MA: MIT Press, 1989.
[9] The Parallel Computing Forum,PCF Fortran: Language Definition, revision 1.5 ed., Aug. 1990.
[10] 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, pp. 1293-1310, Dec. 1972.
[11] L. Lamport, "The parallel execution of DO loops,"Commun. ACM, vol. 17, no. 2, pp. 83-93, Feb. 1974.
[12] M. J. Wolfe, "Loop skewing: The wavefront method revisited,"Int. J. Parallel Programming, vol. 15, no. 4, pp. 279-293, Aug. 1986.
[13] Z. Li, P.-C. Yew, and C.-Q. Zhu, "An efficient data dependence analysis for parallelizing compilers,"IEEE Trans. Parallel Distributed Syst., vol. 1, pp. 26-34, Jan. 1990.
[14] Z. Shen, Z. Li, and P. C. Yew, "An empirical study on array subscripts and data dependences," inProc. 1989 Int. Conf. Parallel Processing, vol. II, Aug. 1989, pp. 145-150.
[15] R. H. Kuhn, "Optimization and interconnection complexity for: parallel processors, single stage networks, and decision trees," Ph.D. dissertation, Dep. Comput. Sci., Rep. 80-1009, Univ. of Illinois, Urbana-Champaign, IL, 1980.
[16] D. Malm,A Computer Laboratory Manual for Number Theory. Wentworth, NH: COMPress, 1980.
[17] U. Banerjee,Dependence Analysis for Supercomputing, Kluwer Academic Publishers, Norwell, Mass., 1988.
[18] T. H. Tzen, "Advanced loop parallelization: Dependence uniformization and trapezoid self-scheduling," Ph.D. dissertation, Michigan State Univ., Jan. 1992.
[19] G. F. Pfister and V. A. Norton, "Hot-spot contention and combining in multistage interconnection networks,"IEEE Trans. Comput., vol. C-34, pp. 934-948, Oct. 1985.
[20] A. K. Nanda, H. Shing, T. H. Tzen, and L. M. Ni, "Resource contention in shared-memory multiprocessors: A parameterized performance degradation model,"J. Parallel and Distributed Comput., vol. 12, pp. 313-328, 1991.
[21] H. Su and P. Yew, "On data synchronization for multiprocessors," inProc. 16th Int. Symp. Comput. Architecture, May 1989, pp. 416-423.
[22] BBN Advanced Computers Inc., Cambridge, MA,Overview of the Butterfly GP1000, Nov. 1988.
[23] BBN Advanced Computers Inc., Cambridge, MA,Mach 1000 Fortran Compiler Reference, revision 1.0 ed., Nov. 1988.

Index Terms:
Index Termsdata dependence uniformisation; loop parallelization; doubly nested loop; irregulardependence constraints; dependence constraints; synchronization method; parallelalgorithms; parallel programming
T.H. Tzen, L.M. Ni, "Dependence Uniformization: A Loop Parallelization Technique," IEEE Transactions on Parallel and Distributed Systems, vol. 4, no. 5, pp. 547-558, May 1993, doi:10.1109/71.224217
Usage of this product signifies your acceptance of the Terms of Use.