Fast and Processor Efficient Parallel Matrix Multiplication Algorithms on a Linear Array With a Reconfigurable Pipelined Bus System

  • Authors:
  • Keqin Li;Yi Pan;Si Qing Zheng

  • Affiliations:
  • State Univ. of New York, New Paltz;Univ. of Dayton, OH;Louisiana State Univ., Baton Rouge

  • Venue:
  • IEEE Transactions on Parallel and Distributed Systems
  • Year:
  • 1998

Quantified Score

Hi-index 0.01

Visualization

Abstract

We present efficient parallel matrix multiplication algorithms for linear arrays with reconfigurable pipelined bus systems (LARPBS). Such systems are able to support a large volume of parallel communication of various patterns in constant time. An LARPBS can also be reconfigured into many independent subsystems and, thus, is able to support parallel implementations of divide-and-conquer computations like Strassen's algorithm. The main contributions of the paper are as follows: We develop five matrix multiplication algorithms with varying degrees of parallelism on the LARPBS computing model, namely, MM1, MM2, MM3, and compound algorithms ${\cal C}_1(\epsilon)$ and ${\cal C}_2(\delta).$ Algorithm ${\cal C}_1(\epsilon)$ has adjustable time complexity in sublinear level. Algorithm ${\cal C}_2(\delta)$ implies that it is feasible to achieve sublogarithmic time using o(N3) processors for matrix multiplication on a realistic system. Algorithms MM3, ${\cal C}_1(\epsilon),$ and ${\cal C}_2(\delta)$ all have o(N3) cost and, hence, are very processor efficient. Algorithms MM1, MM3, and ${\cal C}_1(\epsilon)$ are general-purpose matrix multiplication algorithms, where the array elements are in any ring. Algorithms MM2 and ${\cal C}_2(\delta)$ are applicable to array elements that are integers of bounded magnitude, or floating-point values of bounded precision and magnitude, or Boolean values. Extension of algorithms MM2 and ${\cal C}_2(\delta)$ to unbounded integers and reals are also discussed.