[petsc-users] QR factorization of Parallel Dense Matrix

Jed Brown jedbrown at mcs.anl.gov
Thu Nov 7 16:14:13 CST 2013


James A Charles <charlesj at purdue.edu> writes:

> I did some more investigation into this problem. Do you think using
> Scalapack for the QR factorization would be my best bet? If so, How do
> I interface Petsc to Scalapack? Are the parallelizations of the
> matrices in Petsc compatible with Scalapack?

The algorithm you really want here is "TSQR".  It works by performing a
local QR factorization and then sending the R factors up a tree.  An
alternative that only needs one MPI_Allreduce and no other communication
is "Cholesky QR", which looks like:

  L * L^T = chol(A^T * A)
  Q = A * L^{-T}

Q and R=L^T are factors of A

This is just a few lines of code, though it is less numerically stable
than TSQR.

TSQR would be a good contribution to PETSc, if you have a little bit of
time to implement (not more than a few hours if you are familiar with
PETSc).  We can provide some guidance, otherwise one of us will get to
it eventually.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20131107/3483ad7b/attachment.pgp>


More information about the petsc-users mailing list