[petsc-users] Dense Matrix setting local rows / local columns Question

Jed Brown jedbrown at mcs.anl.gov
Fri Oct 18 13:45:52 CDT 2013


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

> For this multiplication it is a dense matrix of size Nxp (Where N >>
> p) with a matrix of size pxp. If dense-sparse works my workaround
> could be to store the pxp matrix as sparse since it never gets very
> large anyways (and its triangular). And I don't need direct access to
> its data array.

Yeah, or you could store the pxp matrix redundantly on each process and
use MatDenseGetArray, then either (a) call BLAS gemm or (b)
MatCreateSeqDense(... with array) and MatMult for the serial matrix
multiply.

> For MatMatMult in parallel sparse-dense, dense-sparse, and
> sparse-sparse works? 

Yes

> And dense-dense does not because you have switched to Elemental and
> that has a different API that must be used?

Well, our elemental support is intended to be simplified and currently
only supports the [MC,MR] distribution, which is a 2D distribution for
squarish matrices.  It would be nice to add support for more Elemental
distributions, especially [VC,*], but I don't have short-term plans to
do this.  Contributions welcome. :-)
-------------- 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/20131018/7b896f40/attachment.pgp>


More information about the petsc-users mailing list