A Maximally Pipelined Tridiagonal Linear Equation Solver

A new method of solving tridiagonal systems of linear equations is proposed which introduces parallelism in a way that may be effectively exploited by a suitable parallel computer architecture. The scheme is based on the program transformation techniques which can produce machine code to be executed in a maximally pipelined fashion. Compared to the existing parallel solution techniques such as the cyclic reduction algorithms, the new method has the following advantages: (1) It eliminates the substantial data rearrangement overhead incurred by many existing parallel algorithms; (2) it sustains a relatively constant parallelism during various phases of program execution; (3) the code generation is independent of the length of the vectors to be computed, hence is more flexible; (4) in general the size of machine code is much smaller and hence is more efficient in terms of memory usage. The new method is also numerically stable. Using the new method, we outline the code structure of a maximally pipelined tridiagonal linear equation solver for a static data flow supercomputer.

[1]  J. Ortega,et al.  Solution of Partial Differential Equations on Vector and Parallel Computers , 1987 .

[2]  Charles E. Leiserson,et al.  Area-Efficient VLSI Computation , 1983 .

[3]  Guang R. Gao,et al.  Modeling the Weather with a Data Flow Supercomputer , 1984, IEEE Transactions on Computers.

[4]  Gene H. Golub,et al.  On direct methods for solving Poisson's equation , 1970, Milestones in Matrix Computation.

[5]  Roger W. Hockney,et al.  A Fast Direct Solution of Poisson's Equation Using Fourier Analysis , 1965, JACM.

[6]  Harold S. Stone,et al.  Parallel Tridiagonal Equation Solvers , 1975, TOMS.

[7]  Wil Plouffe,et al.  An asynchronous programming language and computing machine , 1978 .

[8]  Harold S. Stone,et al.  An Efficient Parallel Algorithm for the Solution of a Tridiagonal Linear System of Equations , 1973, JACM.

[9]  H. T. Kung Why systolic architectures? , 1982, Computer.

[10]  Jack B. Dennis,et al.  Data Flow Supercomputers , 1980, Computer.

[11]  R. Hockney The potential calculation and some applications , 1970 .

[12]  Guang R. Gao,et al.  Maximum Pipelining of Array Operations on Static Data Flow Machine , 1983, ICPP.

[13]  Wolfgang Rönsch Stability aspects in using parallel algorithms , 1984, Parallel Comput..

[14]  Lynn Conway,et al.  Introduction to VLSI systems , 1978 .

[15]  Guang R. Gao Maximum pipelining linear recurrence on static data flow computers , 1986, International Journal of Parallel Programming.

[16]  Robert G. Voigt,et al.  The Solution of Tridiagonal Linear Systems on the CDC STAR 100 Computer , 1975, TOMS.

[17]  Harold S. Stone,et al.  A Parallel Algorithm for the Efficient Solution of a General Class of Recurrence Equations , 1973, IEEE Transactions on Computers.

[18]  David S. Kershaw,et al.  Solution of Single Tridiagonal Linear Systems and Vectorization of the ICCG Algorithm on the Cray-1 , 1982 .

[19]  G. Guang-Rong AN IMPLEMENTATION SCHEME FOR ARRAY OPERATIONS IN STATIC DATA FLOW COMPUTERS , 1982 .

[20]  G. Forsythe,et al.  Computer solution of linear algebraic systems , 1969 .

[21]  J P Boris Vectorized Tridiagonal Solvers. , 1976 .