This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
On Uniformization of Affine Dependence Algorithms
July 1996 (vol. 45 no. 7)
pp. 827-840

Abstract—This paper deals with the problem of transforming irregular data dependence structures of algorithms with nested loops into more regular ones. Algorithms under consideration are n-dimensional algorithms (algorithms with n nested loops) with affine dependences where dependences are affine functions of index variables of the loop. Methods are proposed to uniformize affine dependence algorithms, i.e., to transform affine dependence algorithms into uniform dependence algorithms where dependences are independent of the index variables (constant). Objectives are considered to guide the selection of feasible uniformizations. The first one is to reduce the number of dependences after uniformization. The second one is to maximize parallelism preserved by the uniformization. Some parallelism might be lost due to the uniformization. The parallelism preserved by the uniformization is measured by 1) the total execution time by the optimal linear schedule which assigns each computation in the algorithm an execution time according to a linear function of the index of the computation, and 2) the size of the cone spanned by the dependence vectors after uniformization.

[1] U. Banerjee,Dependence Analysis for Supercomputing. Norwell, MA: Kluwer, 1988.
[2] J.A.B. Fortes and D.I. Moldvan, "Data Broadcasting in Linear Schedule Array Processors," Proc. 11th Ann. Symp. Computer Architecture, pp. 224-231, 1984.
[3] R. Karp, R. Miller, and S. Winograd, "The Organization of Computations for Uniform Recurrence Equations," J. ACM, vol. 14, July 1967.
[4] G.-J. Li and B.W. Wah, "The Design of Optimal Systolic Arrays," IEEE Trans. Computers, vol. 34, no. 1, pp. 66-77, Jan. 1985.
[5] J.-K. Peir and R. Cytron, "Minimum Distance: A Method for Partitioning Recurrences for Multiprocessors," Proc. Int'l Conf. Parallel Processing, pp. 217-225,St. Charles, Ill., 1987.
[6] P. Quinton and V. Van Dongen, "The Mapping of Linear Recurrence Equations on Regular Arrays," J. VLSI Signal Processing, vol. 1, no. 2, pp. 95-115, Oct. 1989.
[7] W. Shang and J.A.B. Fortes, "On the Optimality of Linear Schedule," J. VLSI Signal Processing, pp. 209-220, Jan. 1989.
[8] W. Shang and J.A.B. Fortes, "Time-Optimal and Conflict-Free Mappings of Uniform Dependence Algorithms into Lower Dimensional Processor Arrays," Proc. Int'l Conf. Parallel Processing, pp. 101-110 (I),St. Charles, Ill., 1990.
[9] W. Shang and J.A.B. Fortes, "Time Optimal Linear Schedules for Algorithms with Uniform Dependencies," IEEE Trans. Computers, vol. 40, June 1991.
[10] W. Shang and J.A.B. Fortes, "Independent Partitioning of Algorithms with Uniform Dependencies," IEEE Trans. Computers, vol. 41, no. 2, pp. 190-206, Feb. 1992.
[11] A. Schrijver, Theory of Linear and Integer Programming. John Wiley, 1986.
[12] T. Tzen and L. Ni, "Data Dependence Analysis and Uniformization for Doubly Nested Loops," Proc. Int'l Conf. Parallel Processing, pp. 91-99(II),St. Charles, Ill, 1992.
[13] Y. Wong and J.-M. Delosme, "Transformation of Broadcasting into Pipelining," Research Report YALEU/DCS/RR-544, June 1987.
[14] V. Van Dongen, "The Transformation of n-Dimensional Linear Recurrences into (n + 1)-Dimensional Uniform Recurrences," technical report, Philips Research Laboratory, Belgium, 1988.
[15] V. Van Dongen and P. Quinton, "Uniformization of Linear Recurrence Equations: A Step Toward the Automatic Synthesis of Systolic Arrays," Proc. Int'l Conf. Systolic Arrays,San Diego, 1988.
[16] Y. Yaacoby and P.R. Cappello, "Converting Affine Recurrence Equations to Quasi-Uniform Recurrence Equations," Technical Report 18, Dept. of Computer Science, Univ. of California Santa Barbara, Feb. 1988.
[17] L.J. Mordell, Diophantine Equations, p. 30.New York: Academic Press, 1969.
[18] W. Shang and B.W. Wah, "Dependence Analysis and Architecture Design for Bit-Level Algorithms," Proc. Int'l Conf. Parallel Processing, pp. 30-38,St. Charles, Ill, Aug. 1993.
[19] Z. Xing and W. Shang, "An Algorithm for Accurate Data Dependence Test," Proc. IEEE Int'l Conf. Application Specific Array Processors, L. Dadda and B.W. Wah, eds., pp. 404-415, Oct. 1993.
[20] A. Darte, L. Khachiyan, and Y. Robert, "Linear Schedule Is Close to Optimality," Proc. IEEE Int'l Conf. Application Specific Array Processors, J. Fortes, E. Lee, and T. Meng, eds., pp. 37-46,Berkeley, Calif., Aug. 1992.
[21] P. Feautrier, “Some Efficient Solution to the Affine Scheduling Problem, II Multi-Dimensional Time,” Int'l J. Parallel Programming, vol. 21, no. 6, pp. 389-420, Dec. 1992.
[22] P. Feautrier, “Some Efficient Solution to the Affine Scheduling Problem, II Multi-Dimensional Time,” Int'l J. Parallel Programming, vol. 21, no. 6, pp. 389-420, Dec. 1992.
[23] P. Clauss and C. Mongenet, "Synthesis Aspects in the Design of Efficient Processor Arrays from Affine Recurrence Equations," J. Symbolic Computation, vol. 15, no2.5-6, pp. 547-569, May-June 1993.
[24] M. Gusev and J. Tasic, "Comparative Analysis of Methods for Broadcasting Elimination," Parallel Computing, vol. 2, no. 8, pp. 857-866, Aug. 1992.
[25] P.M. Lenders, "Multi-Rate Arrays and Affine Recurrence Equations," Parallel Processing Letters, vol. 2, no. 4, pp. 373-380, Dec. 1992.
[26] S.V. Rajopadhye, "Synthesizing Systolic Arrays with Control Signals from Recurrence Equations," Distributed Computing, vol. 3, no. 3, pp. 88-105, 1989.

Index Terms:
Affine dependence, communication localization, dependence transformation, nested loop, uniform dependence, uniformization.
Citation:
Weijia Shang, Edin Hodzic, Zhigang Chen, "On Uniformization of Affine Dependence Algorithms," IEEE Transactions on Computers, vol. 45, no. 7, pp. 827-840, July 1996, doi:10.1109/12.508321
Usage of this product signifies your acceptance of the Terms of Use.