next up previous
Next: Scalability Up: CSI-MSVD Performance Results Previous: Preconditioner for Arnoldi's

5.3 Components of the Parallel Implementation

  Before discussing the parallel performance of the CSI-MSVD algorithm according to the metrics described in Section 4.2, the role of each component in the parallel implementation is briefly described below (see also Section 3.3).

The major functional components of CSI-MSVD (refer to Figure 2) are

The processes MATVEC, PHI and GAMMA are pipelined so that MATVEC initiates the pipeline by sending moments to PHI. PHI then updates the bidiagonal matrix, and GAMMA, the third process in the pipeline, performs the QR-iteration with the updated bidiagonal matrix. As noted in Section 5.1, due to the accelerated computation of moments and the simplifications possible for the two-cyclic iteration (Section 3.1), the order of the matrix defined by Equation (24) and the bidiagonal matrix are independent of the problem size in practice. Hence, the computational workload in PHI and GAMMA may not be large enough to necessitate the parallelization of these components.

The load on processors involved in the MATVEC group, on the other hand, is dependent on the size of the input sparse matrix. It is quite possible that a single processor may not be able to satisfy the memory requirements of some large input matrices. Even if the matrix could be accommodated in a single processor's memory, it is desirable to partition a large matrix across multiple processors to exploit the distributed computation of the Chebyshev iteration [22].



next up previous
Next: Scalability Up: CSI-MSVD Performance Results Previous: Preconditioner for Arnoldi's



Michael W. Berry (berry@cs.utk.edu)
Sun May 19 11:34:27 EDT 1996