Abstract
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.
Similar content being viewed by others
References
J. Bu and E.F. Deprettere, "Analysis and modelling of sequential iterative algorithms for parallel and pipeline implementations," ISCAS, pp. 1961–1965, 1988.
P.R. Cappello and K. Steiglitz, "Unifying VLSI array design with linear transformations of space-time," Advances in Computer Research, JAI Press Inc., Vol. 2, pp 23–65, 1984.
S.Y. Kung, VLSI Array Processors, Prentice Hall, New Jersey, 1988.
E.D. Kyriakis-Bitzaros and C.E. Goutis, "An efficient decomposition technique for mapping nested loops with constant dependencies into regular processor arrays," J. of Parallel and Distributed Computing, Vol. 16, pp. 258–264, 1992.
P. Lee and Z.M. Kedem, "Synthesizing linear array algorithms from nested for loop algorithms," IEEE Trans. on Computers, Vol. 37, pp. 1578–1598, 1988.
P. Lee and Z.M. Kedem, "Mapping nested loop algorithms into multidimensional systolic arrays," IEEE Trans. on Parallel and Distributed Systems, Vol. 1, pp. 64–76, 1990.
D.I. Moldovan and J.A.B. Fortes, "Partitioning and mapping algorithms into fixed size systolic arrays," IEEE Trans. on Computers, Vol C-35, pp. 1–12, 1986.
J.H. Moreno and T. Lang, "Matrix computations on systolic type meshes," IEEE Computer, Vol. 23, pp. 32–51, 1990.
P. Quinton and V. Van Dongen, "The mapping of linear recurrence equations on regular arrays," Journal of VLSI Signal Processing, Vol. 1, pp. 95–113, 1989.
P. Quinton, "The systematic design of systolic arrays," in Automata Networks in Computer Science, F. Fogelman, Y. Robert, and M. Tchuente <nt>(Eds.)</nt>, chap. 9, pp. 229–260, 1987.
S.V. Rajopadhye, "Synthesizing systolic arrays with control signals from recurrence equations," Distributed Computing, Vol. 3, pp. 88–105, 1989.
S.K. Rao and T. Kailath, "Regular iterative algorithms and their implementation on processor arrays," Proc. of the IEEE, Vol. 76, pp. 259–269, 1988.
V.P. Roychowdhury, S.K. Rao, L. Thiele, and T. Kailath, "On the localization of algorithms for VLSI processor arrays," in VLSI Signal Processing III, R.W. Brodersen and H.S. Moscovitz <nt>(Eds.)</nt>, IEEE Press, pp 459–470, 1988.
V. Van Dongen, "Systolic Design of Parameterized Recurrences," W.D. 042, Philips Research Lab, Brussels, Jan. 1987.
Y. Yaacoby and R. Cappello, "Scheduling a system of affine recurrence equations onto a systolic array," Proc. of the Int. Conf. on Systolic Arrays, pp. 373–381, 1988.
A. Darte and Y. Robert, "Constructive methods for scheduling uniform loop nests," IEEE Trans. on Parallel and Distributed Systems, Vol. 5, pp. 814–822, 1994.
D.J. Kuck, The Structure of Computers and Computations, John Wiley & Sons, 1978.
J.K. Peir, and R. Cytron, "Minimum distance: A method for partitioning recurrences for multiprocessors," IEEE Trans. on Computers, Vol. 38, 1989, pp. 1203–1211.
C.D. Polychronopoulos, Parallel Programming and Compilers, Kluwer Academic Publishers, 1988.
A. Rogers and K. Pingali, "Compiling for distributed memory architectures," IEEE Trans. on Parallel and Distributed Systems, Vol. 5, pp. 281–298, 1994.
W. Shang, M.T. O'Keefe and, J.A.B. Fortes, “On loop transformations for generalized cycle shrinking,” IEEE Trans. on Parallel and Distributed Systems, Vol. 5, pp. 193–204, 199
M.E. Wolf and M.S. Lam, "A loop transformation theory and an algorithm to maximize parallelism," IEEE Trans. on Parallel and Distributed Systems, Vol. 2, pp. 452–471, 1991.
R. Karp, R.E. Miller, and S. Winograd, "The organization of computations for uniform recurrence equations," Journal of the ACM, Vol. 14, pp. 563–590, 1967.
L. Lamport, "The parallel execution of DO loops," Communications of the ACM, Vol. 17, pp. 83–93, 1974.
J.A.B. Fortes, K.S. Fu, and B.W. Wah, "Systematic design approaches for algorithmically specified systolic arrays," in Computer Architecture, V. Milutinovic <nt>(Ed.)</nt>, North Holland, pp. 454–494, 1988.
Y.Wong and J.M. Delosme, "Broadcast removal in systolic algorithms," Proc. of the Int. Conf. on Systolic Arrays, pp. 403–412, 1989.
S.Y. Kung, S.C. Lo, and P.S. Lewis, "Optimal systolic design for the transitive closure and the shortest path problems," IEEE Trans. on Computers, Vol. C-36, pp. 603–614, 1987.
C.J. Scheiman and P.R. Cappello, "A processor-time-minimal systolic array for transitive closure," IEEE Trans. on Parallel and Distributed Systems, Vol. 3, pp. 257–269, 1992.
E.D. Kyriakis-Bitzaros, O.G. Koufopavlou, and C.E. Goutis, "Space-time representation of iterative algorithms and the design of regular/processor arrays," Proc. of the ICPP, Vol. 3, pp. 2–9, 1993.
G. Hadley, Linear Programming, AddisonWiley, Reading, MA, 1962.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Kyriakis-Bitzaros, E., Goutis, C. A Space-Time Representation Method of Iterative Algorithms for the Design of Processor Arrays. The Journal of VLSI Signal Processing-Systems for Signal, Image, and Video Technology 22, 151–162 (1999). https://doi.org/10.1023/A:1008103504836
Published:
Issue Date:
DOI: https://doi.org/10.1023/A:1008103504836