[petsc-users] [dev at libelemental.org] Re: The product of two MPIDENSE matrices

Joon Hee Choi choi240 at purdue.edu
Tue Oct 1 18:09:02 CDT 2013

----- Original Message -----
From: "Jack Poulson" <poulson at stanford.edu>
To: dev at libelemental.org, "Jed Brown" <jedbrown at mcs.anl.gov>
Cc: "Joon Hee Choi" <choi240 at purdue.edu>, "Hong Zhang" <hzhang at mcs.anl.gov>, "PETSc users list" <petsc-users at mcs.anl.gov>
Sent: Tuesday, October 1, 2013 6:15:23 PM
Subject: Re: [dev at libelemental.org] Re: [petsc-users] The product of two MPIDENSE matrices

On 10/01/2013 03:04 PM, S V N Vishwanathan wrote:
>> Hi
>>>> I am wondering whether I can multiply MATELEMENTAL and MATAIJ
>>>> matrices. If I cannot multiply those, could you build the
>>>> multiplication?
>>> What are the dimensions of the matrices?
>>> Jack, does Clique support multiplication of sparse matrices with
>>> [MC,MR] dense matrices?
>> The dense matrix is very flat and long (e.g. 10 x few 1000s) and the
>> sparse matrix is also flat and very very long (e.g. few 1000s x few
>> millions). I saw the code which is used to multiply a MPIAIJ matrix with
>> a dense matrix. We need something very similar, but which uses elemental
>> matrices. 

>I haven't yet dedicated much time to the sparse matrix-vector
>multiplication (my focus has been on the sparse-direct factorizations
>and triangular solves), but there *is* a routine for forming

>  Y := alpha A X + Y,

>where A is a distributed sparse matrix, and Y has each column
>identically distributed over the entire team of processes. This is ideal
>for when Y consists of a few hundred or less vectors.

>You seem to be describing a multiplication of the form

>D2 := D1 S,

>where D1 and D2 are very short dense matrices, and S is sparse. If you
>set A := S', X := D1', and D2 := Y', then your use case is appropriate
>for the above scheme. The implementation (and prototype) is here:

Yes, we have the similar multiplication as the form. 
BTW, can we use the multiplication function with the MPIAIJ matrix we created in Petsc? Usually, the parallel matrix is row distributed matrix.



More information about the petsc-users mailing list