A Fast Algorithm for Concurrent LU Decomposition and Matrix Inversion

The authors present an efficient algorithm for Lu decomposition and matrix inversion based on the concurrent data-loading array architecture. The algorithm performs the Lu decomposition of a strongly nonsingular matrix initially loaded in the array, in parallel with computing the inverse matrices l/sup -1/, u/sup -1/, and a/sup -1/: the l/sup -1/ and u/sup -1/ can be taken out together with l and u; and a/sup -1/ will appear in the array at the end of the computation. For an n*n matrix executed on the array of the same size, the total time required for the above computation is n(t/sub a/+t/sub m/+t/sub d/); where t/sub a/, t/sub m/, and t/sub d/ represent the time for addition, multiplication, and division, respectively. A simple augmentation of this algorithm can lead to the solution of a linear system of equations without additional time. The performance of this algorithm is analyzed and compared favorably with an improved version of systolic arrays. 12 references.