Parallel Computations on Reconfigurable Meshes

The mesh with reconfigurable bus is presented as a model of computation. The reconfigurable mesh captures salient features from a variety of sources, including the CAAPP, CHiP, polymorphic-torus network, and bus automation. It consists of an array of processors interconnected by a reconfigurable bus system that can be used to dynamically obtain various interconnection patterns between the processors. A variety of fundamental data-movement operations for the reconfigurable mesh are introduced. Based on these operations, algorithms that are efficient for solving a variety of problems involving graphs and digitized images are also introduced. The algorithms are asymptotically superior to those previously obtained for the aforementioned reconfigurable architectures, as well as to those previously obtained for the mesh, the mesh with multiple broadcasting, the mesh with multiple buses, the mesh-of-trees, and the pyramid computer. The power of reconfigurability is illustrated by solving some problems, such as the exclusive OR, more efficiently on the reconfigurable mesh than is possible on the programmable random-access memory (PRAM). >

[1]  Mikhail J. Atallah,et al.  Graph Problems on a Mesh-Connected Processor Array , 1984, JACM.

[2]  Herbert Freeman,et al.  Determining the minimum-area encasing rectangle for an arbitrary closed curve , 1975, CACM.

[3]  Leslie G. Valiant,et al.  Parallelism in Comparison Problems , 1975, SIAM J. Comput..

[4]  Sartaj Sahni,et al.  Reconfigurable Mesh Algorithms for the Area and Perimeter of Image Components , 1991, ICPP.

[5]  Sartaj Sahni,et al.  Optimal BPC Permutations on a Cube Connected SIMD Computer , 1982, IEEE Transactions on Computers.

[6]  Viktor K. Prasanna,et al.  Parallel Geometric Algorithms for Digitized Pictures on Mesh of Trees , 1986, ICPP.

[7]  Russ Miller,et al.  Meshes with reconfigurable buses , 1988 .

[8]  Toshimitsu Masuzawa,et al.  A sub-logarithmic time sorting algorithm on a reconfigurable array , 1991 .

[9]  Alok Aggarwal Optimal Bounds for Finding Maximum on Array of Processors with k Global Buses , 1986, IEEE Transactions on Computers.

[10]  Dionysios I. Reisis,et al.  Parallel Image Processing On Enhanced Arrays , 1987, ICPP.

[11]  Viktor K. Prasanna,et al.  A fast algorithm for computing histograms on a reconfigurable mesh , 1992, [Proceedings 1992] The Fourth Symposium on the Frontiers of Massively Parallel Computation.

[12]  Dilip V. Sarwate,et al.  Computing connected components on parallel computers , 1979, CACM.

[13]  Dionysios I. Reisis An efficient convex hull computation on the reconfigurable mesh , 1992, Proceedings Sixth International Parallel Processing Symposium.

[14]  Uzi Vishkin,et al.  An O(n² log n) Parallel MAX-FLOW Algorithm , 1982, J. Algorithms.

[15]  Shahid H. Bokhari,et al.  Finding Maximum on an Array Processor with a Global Bus , 1984, IEEE Transactions on Computers.

[16]  Joseph JáJá,et al.  Fast, Efficient Parallel Algorithms for Some Graph Problems , 1981, SIAM J. Comput..

[17]  Steven L. Tanimoto,et al.  A pyramidal approach to parallel processing , 1983, ISCA '83.

[18]  S. N. Maheshwari,et al.  Efficient VLSI Networks for Parallel Processing Based on Orthogonal Trees , 1983, IEEE Transactions on Computers.

[19]  Russ Miller,et al.  Geometric Algorithms for Digitized Pictures on a Mesh-Connected Computer , 1985, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[20]  Stephan Olariu,et al.  Fast computer vision algorithms for reconfigurable meshes , 1992, Proceedings Sixth International Parallel Processing Symposium.

[21]  Jeffrey D Ullma Computational Aspects of VLSI , 1984 .

[22]  Viktor K. Prasanna,et al.  Information Transfer in Distributed Computing with Applications to VLSI , 1984, JACM.

[23]  Sartaj Sahni,et al.  Reconfigurable mesh algorithms for image shrinking, expanding, clustering, and template matching , 1991, [1991] Proceedings. The Fifth International Parallel Processing Symposium.

[24]  Massimo Maresca,et al.  Polymorphic-Torus Network , 1989, IEEE Trans. Computers.

[25]  Cauligi S. Raghavendra,et al.  Array processor with multiple broadcasting , 1985, International Symposium on Computer Architecture.

[26]  Viktor K. Prasanna,et al.  Parallel Architectures and Algorithms for Image Component Labeling , 1992, IEEE Trans. Pattern Anal. Mach. Intell..

[27]  Quentin F. Stout,et al.  Meshes with multiple buses , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[28]  Viktor K. Prasanna,et al.  Information Transfer under Different Sets of Protocols , 1984, SIAM J. Comput..

[29]  Gen-Huey Chen,et al.  Constant Time Sorting on a Processor Array with a Reconfigurable Bus System , 1990, Inf. Process. Lett..

[30]  Sartaj Sahni,et al.  Data broadcasting in SIMD computers , 1981, IEEE Transactions on Computers.

[31]  Lawrence Snyder,et al.  Introduction to the configurable, highly parallel computer , 1982, Computer.

[32]  Jerome Rothstein,et al.  Immediate Parallel Solution of the Longest Common Subsequence Problem , 1987, ICPP.

[33]  Susanne E. Hambrusch,et al.  Solving Undirected Graph Problems on VLSI , 1985, SIAM J. Comput..

[34]  Quentin F. Stout,et al.  Mesh-Connected Computers with Broadcasting , 1983, IEEE Transactions on Computers.

[35]  Russ Miller,et al.  Data Movement Techniques for the Pyramid Computer , 1987, SIAM J. Comput..

[36]  David Peleg,et al.  The Power of Reconfiguration , 1991, J. Parallel Distributed Comput..

[37]  Viktor K. Prasanna,et al.  An optimal multiplication algorithm for reconfigurable mesh , 1992, [1992] Proceedings of the Fourth IEEE Symposium on Parallel and Distributed Processing.

[38]  Uzi Vishkin,et al.  An O(log n) Parallel Connectivity Algorithm , 1982, J. Algorithms.

[39]  Dionysios I. Reisis,et al.  VLSI Arrays with Reconfigurable Buses , 1988, ICS.

[40]  K. Ohzeki,et al.  An Architecture for Image Understanding by Symbol and Pattern Integration , 1994 .