[Trilinos-Users] [EXTERNAL] Tpetra::CrsMatrix caching related to C= A^T B and D = A*C

Denis Davydov davydden at gmail.com
Fri Sep 14 05:48:15 EDT 2018


Hi Chris,

> On 12 Sep 2018, at 16:00, Siefert, Christopher <csiefer at sandia.gov> wrote:
> 
> 1) The way this is usually used is row-wise, matching A.

but I am doing A^T B where both A and B are distributed in MPI row-wise only. 
So what’s the distribution of  C = A^T B in this case?

> 2) MatrixMatrix::Multiply does the data migration internally, presuming the maps are compatible.

good know, thanks.

> 3) Running with fillComplete'd matrices for is going to be much, much faster than running w/o fillComplete.  You do *not* need to do what you're doing.  Could you try removing the resumeFill and redoing the timing?

looks like I have to do this, otherwise I get:

Exception on processing:
.../trilinos-12.12.1-oezdv7yojfjmbqdbsy57mvcmogm7qfrj/Trilinos-trilinos-release-12-12-1/packages/tpetra/core/ext/TpetraExt_MatrixMatrix_def.hpp:191:

Throw number = 1

Throw test that evaluated to true: C.isFillActive() == false

Error!
Aborting!

the check is here: 
https://github.com/trilinos/Trilinos/blob/master/packages/tpetra/core/ext/TpetraExt_MatrixMatrix_def.hpp#L204 <https://github.com/trilinos/Trilinos/blob/master/packages/tpetra/core/ext/TpetraExt_MatrixMatrix_def.hpp#L204> 

So to me it looks like it’s not possible to call C = A^T B with C being fillComplete().

Regards,
Denis.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://trilinos.org/pipermail/trilinos-users/attachments/20180914/0844576f/attachment.html>


More information about the Trilinos-Users mailing list