[petsc-users] MatCompositeMerge + MatCreateRedundantMatrix
Matthew Knepley
knepley at gmail.com
Wed Feb 20 18:31:44 CST 2019
On Wed, Feb 20, 2019 at 6:57 PM Marius Buerkle <mbuerkle at web.de> wrote:
> ok, I think I understand now. I will give it a try and if there is some
> trouble comeback to you. thanks.
>
Cool.
Matt
>
> marius
>
> On Tue, Feb 19, 2019 at 8:42 PM Marius Buerkle <mbuerkle at web.de> wrote:
>
>> ok, so it seems there is no straight forward way to transfer data between
>> PETSc matrices on different subcomms. Probably doing it by "hand"
>> extracting the matricies on the subcomms create a MPI_INTERCOMM transfering
>> the data to PETSC_COMM_WORLD and assembling them in a new PETSc matrix
>> would be possible, right?
>>
>
> That sounds too complicated. Why not just reverse
> MPICreateSubMatricesMPI()? Meaning make it collective on the whole big
> communicator, so that you can swap out all the subcommunicator for the
> aggregation call, just like we do in that function.
> Then its really just a matter of reversing the communication call.
>
> Matt
>
>>
>> On Tue, Feb 19, 2019 at 7:12 PM Marius Buerkle <mbuerkle at web.de> wrote:
>>
>>> I see. This would work if the matrices are on different subcommumicators
>>> ? Is it possible to add this functionality ?
>>>
>>
>> Hmm, no. That is specialized to serial matrices. You need the inverse of
>> MatCreateSubMatricesMPI().
>>
>> Thanks,
>>
>> Matt
>>
>>
>>> marius
>>>
>>>
>>> You basically need the inverse of MatCreateSubmatrices(). I do not think
>>> we have that right now, but it could probably be done without too much
>>> trouble by looking at that code.
>>>
>>> Thanks,
>>>
>>> Matt
>>>
>>> On Tue, Feb 19, 2019 at 6:15 AM Marius Buerkle via petsc-users <
>>> petsc-users at mcs.anl.gov> wrote:
>>>
>>>> Hi !
>>>>
>>>> Is there some way to combine MatCompositeMerge
>>>> with MatCreateRedundantMatrix? I basically want to create copies of a
>>>> matrix from PETSC_COMM_WORLD to subcommunicators, do some work on each
>>>> subcommunicator and than gather the results back to PETSC_COMM_WORLD,
>>>> namely I want to sum the the invidual matrices from the subcommunicatos
>>>> component wise and get the resulting matrix on PETSC_COMM_WORLD. Is this
>>>> somehow possible without going through all the hassle of using MPI
>>>> directly?
>>>>
>>>> marius
>>>>
>>>
>>>
>>> --
>>> What most experimenters take for granted before they begin their
>>> experiments is infinitely more interesting than any results to which their
>>> experiments lead.
>>> -- Norbert Wiener
>>>
>>> https://www.cse.buffalo.edu/~knepley/
>>> <http://www.cse.buffalo.edu/~knepley/>
>>>
>>
>>
>> --
>> What most experimenters take for granted before they begin their
>> experiments is infinitely more interesting than any results to which their
>> experiments lead.
>> -- Norbert Wiener
>>
>> https://www.cse.buffalo.edu/~knepley/
>> <http://www.cse.buffalo.edu/~knepley/>
>>
>
>
> --
> What most experimenters take for granted before they begin their
> experiments is infinitely more interesting than any results to which their
> experiments lead.
> -- Norbert Wiener
>
> https://www.cse.buffalo.edu/~knepley/
> <http://www.cse.buffalo.edu/~knepley/>
>
--
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20190220/cea4d2f4/attachment.html>
More information about the petsc-users
mailing list