parallel implementation of the inversion of polynomial matrices alina solovyova-vincent march 26,...
Post on 21-Dec-2015
218 views
TRANSCRIPT
![Page 1: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/1.jpg)
Parallel Implementation of the Inversion of Polynomial
Matrices
Alina Solovyova-Vincent
March 26, 2003
A thesis submitted in partial fulfillment of the requirements for the degree of Master of Science with
a major in Computer Science.
![Page 2: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/2.jpg)
Acknowledgments
I would like to thank Dr. Harris for his generous help and support.
I would like to thank my committee members, Dr. Kongmunvattana and
Dr. Fadali for their time and helpful comments.
![Page 3: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/3.jpg)
Overview
IntroductionExisting algorithmsBusłowicz’s algorithmParallel algorithmResults Conclusions and future work
![Page 4: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/4.jpg)
Definitions
A polynomial matrix is a matrix which has polynomials in all of its entries.
H(s) = Hnsn+Hn-1sn-1+Hn-2sn-2+…+Ho,
where Hi are constant r x r matrices,
i=0, …, n.
![Page 5: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/5.jpg)
Definitions
Example: s+2 s3+ 3s2+s s3 s2+1
n=3 – degree of the polynomial matrix
r=2 – the size of the matrix H
Ho= H1= …2 0
0 1
1 1
0 0
![Page 6: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/6.jpg)
Definitions
H-1(s) – inverse of the matrix H(s)
One of the ways to calculate it
H-1(s) = adj H(s) /det H(s)
![Page 7: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/7.jpg)
Definitions
A rational matrix can be expressed as a ration of a numerator polynomial matrix and a denominator scalar polynomial.
![Page 8: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/8.jpg)
Who Needs It???
Multivariable control systemsAnalysis of power systemsRobust stability analysisDesign of linear decoupling controllers… and many more areas.
![Page 9: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/9.jpg)
Existing Algorithms
Leverrier’s algorithm ( 1840)[sI-H] - resolvent matrix
Exact algorithms Approximation methods
![Page 10: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/10.jpg)
The Selection of the Algorithm
Before
Buslowicz’s algorithm (1980)
After
Large degree of polynomial operations
Lengthy calculationsNot very general
Some improvements at the cost of increased computational complexity
![Page 11: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/11.jpg)
Buslowicz’s Algorithm
Benefits:More general than methods proposed earlierOnly requires operations on constant matricesSuitable for computer programming
Drawback: the irreducible form cannot be ensured in general
![Page 12: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/12.jpg)
Details of the Algorithm
Available upon request
![Page 13: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/13.jpg)
Challenges Encountered (sequential)
Several inconsistencies in the original paper:
![Page 14: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/14.jpg)
Challenges Encountered (parallel)
for(k=0; k<n*i+1; k++) {
}
Dependent loops
for (i=2; i<r+1; i++) {
calculations requiring R[i-1][k]
}
O(n2r4)
![Page 15: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/15.jpg)
Challenges Encountered (parallel)
Loops of variable length
for(k=0; k<n*i+1; k++) {
for(ll=0; ll<min+1; ll++) { main calculations } }
Varies with k
![Page 16: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/16.jpg)
Shared and Distributed Memory
Main differences Synchronization of the processes
Shared Memory (barrier) Distributed memory (data exchange)
for (i=2; i<r+1; i++) { calculations requiring R[i-1]
*Synchronization point }
![Page 17: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/17.jpg)
Platforms
Distributed memory platforms:
SGI 02 NOW MIPS R5000 180MHzP IV NOW 1.8 GHz P III Cluster 1GHz P IV Cluster Zeon 2.2GHz
![Page 18: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/18.jpg)
Platforms
Shared memory platforms:
SGI Power Challenge 10000 8 MPIS R10000
SGI Origin 200016 MPIS R12000 300MHz
![Page 19: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/19.jpg)
Understanding the Results
n – degree of polynomial (<= 25)r – size of a matrix (<=25)Sequential algorithm – O(n2r5)Average of multiple runsUnloaded platforms
![Page 20: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/20.jpg)
Sequential Run Times (n=25, r=25)
Platform Times (sec)
SGI O2 NOW 2645.30
P IV NOW 22.94
P III Cluster 26.10
P IV Cluster 18.75
SGI Power Challenge 913.99
SGI Origin 2000 552.95
![Page 21: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/21.jpg)
Results – Distributed Memory
Speedup
SGI O2 NOW - slowdown
P IV NOW - minimal speedup
![Page 22: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/22.jpg)
Speedup (P III & P IV Clusters)
![Page 23: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/23.jpg)
Results – Shared Memory
Excellent results!!!
![Page 24: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/24.jpg)
Speedup (SGI Power Challenge)
![Page 25: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/25.jpg)
Speedup (SGI Origin 2000)
Superlinear speedup!
![Page 26: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/26.jpg)
Run times (SGI Power Challenge)
8 processors
![Page 27: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/27.jpg)
Run times (SGI Origin 2000)
n =25
![Page 28: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/28.jpg)
Run times (SGI Power Challenge)
r =20
![Page 29: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/29.jpg)
Efficiency
2 4 6 8 16 24
P IIICluster
89.7% 76.5% 61.3% 58.5% 40.1% 25.0%
P IVCluster
88.3% 68.2% 49.9% 46.9% 26.1% 15.5%
SGI PowerChallenge
99.7% 98.2% 97.9% 95.8% n/a n/a
SGI Origin 2000
99.9% 98.7% 99.0% 98.2% 93.8% n/a
![Page 30: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/30.jpg)
Conclusions
We have performed an exhaustive search of all available algorithms;We have implemented the sequential version of Busłowicz’s algorithm;We have implemented two versions of the parallel algorithm;We have tested parallel algorithm on 6 different platforms;We have obtained excellent speedup and efficiency in a shared memory environment.
![Page 31: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/31.jpg)
Future Work
Study the behavior of the algorithm for larger problem sizes (distributed memory).
Re-evaluate message passing in distributed memory implementation.
Extend Buslowicz’s algorithm to inverting multivariable polynomial matrices
H(s1, s2 … sk).
![Page 32: Parallel Implementation of the Inversion of Polynomial Matrices Alina Solovyova-Vincent March 26, 2003 A thesis submitted in partial fulfillment of the](https://reader035.vdocuments.us/reader035/viewer/2022081519/56649d605503460f94a40d22/html5/thumbnails/32.jpg)
Questions