[Trilinos-Users] Tpetra::CrsMatrix caching related to C= A^T B and D = A*C
Chris Siefert
csiefer at sandia.gov
Mon Sep 24 10:48:48 EDT 2018
Denis,
My apologies! My email has been inaccessible for the last week (the
wonders of modern technology, eh?). Replies below inline.
On 09/24/2018 07:46 AM, Denis Davydov wrote:
> Hi Chris,
>
> Sorry to bother, but can you please reply to comment on the questions
> (1) and (3) below?
> You said I can run C=A^T B with C being fillComplete() but as I
> mention there is an exception thrown.
> I am also still curious what’s the distribution of C=A^T B when both A
> and B and distributed row-wise.
> Perhaps based on our discussion the documentation
> of Tpetra::MatrixMatrix::Multiply() could be improved.
>
> Regards,
> Denis.
>
>> On 14 Sep 2018, at 11:48, Denis Davydov <davydden at gmail.com
>> <mailto:davydden at gmail.com>> wrote:
>>
>> Hi Chris,
>>
>>> On 12 Sep 2018, at 16:00, Siefert, Christopher <csiefer at sandia.gov
>>> <mailto: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?
It should match the DomainMap of A, IIRC.
>>
>>> 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
>>
>>
>> So to me it looks like it’s not possible to call C = A^T B with C
>> being fillComplete().
Huh. That's weird. I need to look into that.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://trilinos.org/pipermail/trilinos-users/attachments/20180924/48867225/attachment.html>
More information about the Trilinos-Users
mailing list