Abstract

Given N matrices A/sub 1/, A/sub 2/,..., A/sub N/ of size N/spl times/N, the matrix chain product problem is to compute A/sub 1//spl times/A/sub 2//spl times//spl middot//spl middot//spl middot/A/sub N/. Given an N/spl times/N matrix A, the matrix powers problem is to calculate the first N powers of A, i.e., A, A/sup 2/A/sup 3/,..., A/sup N/. We consider distributed memory systems (DMS) with p processors that can support one-to-one communications in O(T(p)) time. Assume that the time complexity of the best known sequential algorithm for matrix multiplication is O(N/sup /spl alpha//), where /spl alpha/<2.3755. Let p be arbitrarily chosen in the range 1/spl les/p/spl les/N/sup /spl alpha/+1//log N. We show that the two problems can be solved on a p-processor DMS in T/sub chain/(N,p)=O(N/sup /spl alpha/+1//p+T(p)(N/sup 2(1+1//spl alpha/)//p/sup 2// /sup /spl alpha//(log p/N)/sup 1-2//spl alpha//+log(p log N/N/sup /spl alpha//) log N)) and T/sub power/(N,p)=0(N/sup /spl alpha/+1//p+T(p)(N/sup 2(1+1//spl alpha/)//p/sup 2// /sup /spl alpha//(log p/log N)/sup 1-2//spl alpha//+(log N)/sup 2/)) times, respectively. We also give instantiation of the above results in distributed memory parallel computers and DMS with hypercubic networks, and show that our parallel algorithms are either fully scalable or highly scalable.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.