Dynamic ordering for a parallel block-Jacobi SVD algorithm

A new approach for the parallel computation of singular value decomposition (SVD) of matrix A ∈ Cm×n is proposed. Contrary to the known algorithms that use a static cyclic ordering of subproblems simultaneously solved in one iteration step, the proposed implementation of the two-sided block-Jacobi method uses a dynamic ordering of subproblems. The dynamic ordering takes into account the actual status of matrix A. In each iteration step, a set of the off-diagonal blocks is determined that reduces the Frobenius norm of the off-diagonal elements of A as much as possible and, at the same time, can be annihilated concurrently. The solution of this task is equivalent to the solution of the maximum-weight perfect matching problem. The greedy algorithm for the efficient solution of this problem is presented. The computational experiments with both types of ordering, incorporated into the two-sided block-Jacobi method, were performed on an SGI - Cray Origin 2000 parallel computer using the Message Passing Interface (MPI). The results confirm that the dynamic ordering is much more efficient with regard to the amount of work required for the computation of SVD of a given accuracy than the static cyclic ordering.

[1]  Peter Zinterhof,et al.  Parallel computation : 4th International ACPC Conference including special tracks on Parallel Numerics (ParNum '99) and Parellel Computing in Image Processing, Video Processing, and Multimedia, Salzburg, Austria, February 16-18, 1999 : proceedings , 1999 .

[2]  Marián Vajtersic,et al.  Block-jacobi Svd Algorithms for Distributed Memory Systems Ii: Meshes* , 1999, Parallel Algorithms Appl..

[3]  Ed Anderson,et al.  LAPACK Users' Guide , 1995 .

[4]  C. Jacobi,et al.  C. G. J. Jacobi's Gesammelte Werke: Über ein leichtes Verfahren, die in der Theorie der Sacularstorungen vorkommenden Gleichungen numerisch aufzulosen , 1846 .

[5]  Irene A. Stegun,et al.  Handbook of Mathematical Functions. , 1966 .

[6]  Christian H. Bischof,et al.  Computing the singular value decomposition on a distributed system of vector processors , 1987, Parallel Comput..

[7]  J. H. Wilkinson The algebraic eigenvalue problem , 1966 .

[8]  C. Jacobi Über ein leichtes Verfahren die in der Theorie der Säcularstörungen vorkommenden Gleichungen numerisch aufzulösen*). , 2022 .

[9]  Marián Vajtersic,et al.  Block-jacobi Svd Algorithms for Distributed Memory Systems I: Hypercubes and Rings , 1999, Parallel Algorithms Appl..

[10]  Sophie Robert,et al.  Experiments with Parallel One-Sided and Two-Sided Algorithms for SVD , 1999, ACPC.

[11]  James Demmel,et al.  Applied Numerical Linear Algebra , 1997 .

[12]  Harold N. Gabow,et al.  Data structures for weighted matching and nearest common ancestors with linking , 1990, SODA '90.

[13]  William J. Cook,et al.  Computing Minimum-Weight Perfect Matchings , 1999, INFORMS J. Comput..

[14]  Jan van Leeuwen,et al.  Handbook of Theoretical Computer Science, Vol. A: Algorithms and Complexity , 1994 .

[15]  R. Brent,et al.  The Solution of Singular-Value and Symmetric Eigenvalue Problems on Multiprocessor Arrays , 1985 .

[16]  Gene H. Golub,et al.  Matrix computations , 1983 .

[17]  Milton Abramowitz,et al.  Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables , 1964 .

[18]  L. Trefethen,et al.  Numerical linear algebra , 1997 .