dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #24641
Re: SystemAssembler
On 4 October 2011 18:05, Kent-Andre Mardal <kent-and@xxxxxxxxx> wrote:
>
>
> On 4 October 2011 18:13, Anders Logg <logg@xxxxxxxxx> wrote:
>>
>> On Tue, Oct 04, 2011 at 04:17:01PM +0100, Garth N. Wells wrote:
>> > On 4 October 2011 12:24, Anders Logg <logg@xxxxxxxxx> wrote:
>> > > SystemAssembler does not support subdomains. It is even silently
>> > > ignoring all other integrals than number 0.
>> > >
>> > > This is one of the remaining bugs for 1.0-beta2. I can try to fix it
>> > > but would like some input on what shape the SystemAssembler is
>> > > currently in. I haven't touched it that much before since it looks
>> > > like a bit of code duplication to me. In particular, is it necessary
>> > > to keep both functions cell_wise_assembly and facet_wise_assembly?
>> > >
>> >
>> > It would require some performance testing to decide. I expect that,
>> > for performance reasons, both are required.
>>
>> I'm getting very strange results. Here are results for assembling
>> Poisson matrix + vector on a 32 x 32 x 32 unit cube:
>>
>> Regular assembler: 0.658 s
>> System assembler: 9.08 s (cell-wise)
>> System assembler: 202 s (facet-wise)
>>
>> Is this expected?
>>
>> What are the arguments against ditching SystemAssembler (for less code
>> duplication) and adding functionality for symmetric application of BCs
>> on the linear algebra level?
>>
>
>
>
> Earlier system_assemble of A and b was faster than assemble of A and b.
It was faster because it was less general. After being generalised,
the performance of SystemAssembler was to all intents and purposes the
same as Assembler.
> Something strange must have happened.
> SystemAssemble enforce symmetric BC elementwise which
> is much faster than doing it on linear algebra level.
I'm not sure that that is true. In my experience the difference is marginal.
Garth
> Kent
>
>>
>> --
>> Anders
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~dolfin
>> Post to : dolfin@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~dolfin
>> More help : https://help.launchpad.net/ListHelp
>
>
Follow ups
References