Project: Parallel codes for computing principal angles

MATH 6664 and C SC 5646: Numerical Linear Algebra

Fall 2001. University of Colorado at Denver

INSTRUCTOR:
Prof. Andrew Knyazev
Office: CU (Dravo) 644. Phone: 556-8102.
Office hours: by appointment
WWW: http://www-math.cudenver.edu/~aknyazev/
Email: aknyazev@math.cudenver.edu


The Background:
A paper A. V. Knyazev, Merico E. Argentati, An Effective and Robust Algorithm for Finding Principal Angles Between Subspaces Using An A-Based Scalar Product; a revised version submitted to SISC, 2000, describes algorithms of computing principal angles between subspaces. These algorithms are implemented in a MATLAB code SUBSPACEA.m. The code accurately and relatively efficiently computes principal angles between subspaces given by dense matrices of the size n-by-p and n-by-q when n >> p and n >> q. The code is very inefficient for subspaces given by sparse matrices as one of the first steps is an orthonormalization of the martices, which destroys the sparsity. A new revision of the code, for sparse matrices, is a work in progress.

The Main Goal:
Writing parallel versions of the codes for the departmental high-performance parallel Beowulf Cluster, supported by the NSF Award DMS MRI 0079719, and testing them on large-scale applications.

The Project Stages:
1. Learning the very basics of parallel programming and how to use the cluster. Tentative Due Date: November 6.
2. Writing a parallel version of the existing MATLAB code SUBSPACEA.m for dense matrices. Only the most costly parts of the method, when n >> p and n >> q, need to be run in parallel. Tentative Due Date: November 20.
3. Writing a parallel version of an upcoming MATLAB code for sparse matrices. Tentative Due Date: November 27.
4. Running large-scale tests. Tentative Due Date: December 10.