Permutations on Illiac IV-Type Networks

Performing permutations of data on SIMD computers efficiently is important for high-speed execution of parallel algorithms. In this correspondence we consider realizing permutations such as perfect shuffle, matrix transpose, bit-reversal, the class of bit-permute- complement (BPC), the class of Omega, and inverse Omega permutations on N = 2n processors with Illiac IV-type interconnection network, where each processor is connected to processors at distances of ± 1 and ± N. The minimum number of data transfer operations required for realizing any of these permutations on such a network is shown to be 2(N − 1). We provide a general three-phase strategy for realizing permutations and derive routing algorithms for performing perfect shuffle, Omega, Inverse Omega, bit reversal, and matrix-transpose permutations in 2(N − 1) steps. Our approach is quite simple, and unlike previous approaches, makes efficient use of the topology of the Illiac IV-type network to realize these permutations using the optimum number of data transfers. Our strategy is quite powerful: any permutation can be realized using this strategy in 3(N − 1) steps.

[1]  Thomas W. Williams,et al.  VLSI Testing , 1984, Computer.

[2]  SahniSartaj,et al.  An optimal routing algorithm for mesh-connected Parallel computers , 1980 .

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

[4]  Thompson Generalized Connection Networks for Parallel Processor Intercommunication , 1978, IEEE Transactions on Computers.

[5]  Sartaj Sahni,et al.  A Self-Routing Benes Network and Parallel Permutation Algorithms , 1981, IEEE Transactions on Computers.

[6]  H. T. Kung,et al.  Sorting on a mesh-connected parallel computer , 1976, STOC '76.

[7]  D. C. King Diagnosis and reliable design of digital systems , 1977 .

[8]  Duncan H. Lawrie,et al.  Access and Alignment of Data in an Array Processor , 1975, IEEE Transactions on Computers.

[9]  Jacques Lenfant,et al.  Parallel Permutations of Data: A Benes Network Control Algorithm for Frequently Used Permutations , 1978, IEEE Transactions on Computers.

[10]  Syed Zahoor Hassan Signature Testing of Sequential Machines , 1984, IEEE Transactions on Computers.

[11]  Howard Jay Siegel,et al.  Performing the Shuffle with the PM2I and Illiac SIMD Interconnection Networks , 1983, ICPP.

[12]  Thomas W. Williams,et al.  Design for Testability - A Survey , 1982, IEEE Trans. Computers.

[13]  Clark D. Thomborson,et al.  Generalized Connection Networks for Parallel Processor Intercommunication , 1978, IEEE Trans. Computers.

[14]  Harold S. Stone,et al.  Parallel Processing with the Perfect Shuffle , 1971, IEEE Transactions on Computers.

[15]  Kozo Kinoshita,et al.  Easily Testable Sequential Machines with Extra Inputs , 1975, IEEE Transactions on Computers.

[16]  Howard Jay Siegel,et al.  A Model of SIMD Machines and a Comparison of Various Interconnection Networks , 1979, IEEE Transactions on Computers.

[17]  Jacob Savir,et al.  Syndrome-Testable Design of Combinational Circuits , 1980, IEEE Transactions on Computers.

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

[19]  Dhiraj K. Pradhan,et al.  A Uniform Representation of Single-and Multistage Interconnection Networks Used in SIMD Machines , 1980, IEEE Transactions on Computers.

[20]  Samuel E. Orcutt Implementation of Permutation Functions in Illiac IV-Type Computers , 1976, IEEE Transactions on Computers.

[21]  Edward F. Moore,et al.  Gedanken-Experiments on Sequential Machines , 1956 .

[22]  Richard M. Brown,et al.  The ILLIAC IV Computer , 1968, IEEE Transactions on Computers.

[23]  F. C. Hennine Fault detecting experiments for sequential circuits , 1964, SWCT 1964.

[24]  Michael J. Flynn,et al.  Very high-speed computing systems , 1966 .

[25]  Dhiraj K. Pradhan Sequential Network Design Using Extra Inputs for Fault Detection , 1983, IEEE Transactions on Computers.

[26]  Edward J. McCluskey Built-In Verification Test , 1982, ITC.

[27]  Sartaj Sahni,et al.  An optimal routing algorithm for mesh-connected Parallel computers , 1980, JACM.