On 3 September 2012 16:55, Anders Logg <l...@simula.no> wrote: > On Mon, Sep 03, 2012 at 03:48:05PM +0100, Garth N. Wells wrote: >> On 3 September 2012 12:40, Anders Logg <l...@simula.no> wrote: >> > On Mon, Sep 03, 2012 at 09:21:05AM +0200, Joachim Berdal Haga wrote: >> >> > re-assembling the coefficient matrix. SystemAssembler OTOH can easily >> >> > be reimplemented in terms of SymmetricAssembler + Assembler. >> >> > (SymmetricAssembler only does rank-2, to avoid duplication; hence, >> >> > both are required) >> >> >> >> ... and, just to mention it, it wouldn't be a problem to support >> >> rank-0/1 as well in SymmetricAssembler, in which case we can get down >> >> to one assembler implementation. Plus OpenMP. >> > >> > If we can get the same speed as Assembler + all the features of >> > SymmetricAssembler, then I think both should be merged into one. >> > >> >> We should work towards this. A symmetric assembler should be the >> 'flagship' since it permits CG and Cholesky for a wide range of >> problems. > > Agree, but I think the flagship should also have seamless support for > OpenMP. >
Agree. There are two major shortcomings which we are addressing: 1. The threaded assembler does not work in combination with MPI 2. The threaded assembler does not support symmetric assembly. Once this is in place, it can be the #1 assembler. Garth >> I have some ideas on how to do what SymmetricAssembler does but >> without assembling a whole second sparse matrix. > > Interesting. > >> > Is there an overhead for putting the OpenMP code into the regular >> > assembler? We would trivially loop over one color. >> > >> >> Generally yes. I'm actively working on this, so it should be left for now. > > ok. > > -- > Anders _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : dolfin@lists.launchpad.net Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp