A Space-Time Representation Method of Iterative Algorithms for the Design of Processor Arrays

A novel Space-Time Representation (STR) of iterative algorithms for their systematic mapping onto regular processor arrays is proposed. Timing information is introduced in the Dependence Graph (DG) by the definition and the construction of the Space-Time DG (STDG). Any variable instance of the loop body, independently of the number of the loop indices, is characterized by an integer vector composed by its indices, as space part, and an additional time index, representing its execution time according to a preliminary timing. The main advantage of the STR is that the need for the uniformization of the algorithm is avoided. Moreover, it is proven that in the STDG dependence vectors having opposite directions do not exist and therefore a linear mapping of the STDG onto the desired processor array can always be derived. Efficient 2D and 1D regular architectures are produced by applying the STR to the original description of the Warshall-Floyd algorithm for the Algebraic Path Problem.

[1]  B. W. Wah,et al.  Systematic design approaches for algorithmically specified systolic arrays , 1988 .

[2]  Sun-Yuan Kung,et al.  Optimal Systolic Design for the Transitive Closure and the Shortest Path Problems , 1987, IEEE Transactions on Computers.

[3]  Richard M. Karp,et al.  The Organization of Computations for Uniform Recurrence Equations , 1967, JACM.

[4]  Y. Wong,et al.  Broadcast removal in systolic algorithms , 1988, [1988] Proceedings. International Conference on Systolic Arrays.

[5]  Patrice Quinton,et al.  The mapping of linear recurrence equations on regular arrays , 1989, J. VLSI Signal Process..

[6]  Monica S. Lam,et al.  A Loop Transformation Theory and an Algorithm to Maximize Parallelism , 1991, IEEE Trans. Parallel Distributed Syst..

[7]  Constantinos E. Goutis,et al.  An Efficient Decompostion Technique for Mapping Nested Loops with Constant Dependencies into Regular Processor Arrays , 1992, J. Parallel Distributed Comput..

[8]  David L. Kuck,et al.  The Structure of Computers and Computations , 1978 .

[9]  Patrice Quinton,et al.  The systematic design of systolic arrays , 1987 .

[10]  Tomás Lang,et al.  Matrix Computations on Systolic-Type Meshes , 1990, Computer.

[11]  Dan I. Moldovan,et al.  Partitioning and Mapping Algorithms into Fixed Size Systolic Arrays , 1986, IEEE Transactions on Computers.

[12]  Chris J. Scheiman,et al.  A Processor-Time-Minimal Systolic Array for Transitive Closure , 1992, IEEE Trans. Parallel Distributed Syst..

[13]  Thomas Kailath,et al.  Regular iterative algorithms and their implementation on processor arrays , 1988, Proc. IEEE.

[14]  Peter R. Cappello,et al.  Scheduling a system of affine recurrence equations onto a systolic array , 1988, [1988] Proceedings. International Conference on Systolic Arrays.

[15]  Constantine D. Polychronopoulos,et al.  Parallel programming and compilers , 1988 .

[16]  J. Cosgrove,et al.  Array processors , 1980, IEEE Acoustics, Speech, and Signal Processing Newsletter.

[17]  Ed F. Deprettere,et al.  Analysis and modeling of sequential iterative algorithms for parallel and pipeline implementations , 1988, 1988., IEEE International Symposium on Circuits and Systems.

[18]  Leslie Lamport,et al.  The parallel execution of DO loops , 1974, CACM.

[19]  Zvi M. Kedem,et al.  Mapping Nested Loop Algorithms into Multidimensional Systolic Arrays , 2017, IEEE Trans. Parallel Distributed Syst..

[20]  Constantinos E. Goutis,et al.  Space-Time Representation of Iterative Algorithms and the Design of Regular Processor Arrays , 1993, 1993 International Conference on Parallel Processing - ICPP'93.

[21]  S. Kung,et al.  VLSI Array processors , 1985, IEEE ASSP Magazine.

[22]  PEIZONG LEE,et al.  Synthesizing Linear Array Algorithms from Nested For Loop Algorithms , 2015, IEEE Trans. Computers.

[23]  Jih-Kwon Peir,et al.  Minimum Distance: A Method for Partitioning Recurrences for Multiprocessors , 1989, IEEE Trans. Computers.

[24]  Anne Rogers,et al.  Compiling for Distributed Memory Architectures , 1994, IEEE Trans. Parallel Distributed Syst..

[25]  Yves Robert,et al.  Constructive Methods for Scheduling Uniform Loop Nests , 1994, IEEE Trans. Parallel Distributed Syst..

[26]  Weijia Shang,et al.  On Loop Transformations for Generalized Cycle Shrinking , 1994, IEEE Trans. Parallel Distributed Syst..