Anders Logg wrote:
> On Sun, Aug 16, 2009 at 10:34:12PM +0100, Garth N. Wells wrote:
>>
>> Anders Logg wrote:
>>> On Sun, Aug 16, 2009 at 04:36:33PM +0100, Garth N. Wells wrote:
>>>> Anders Logg wrote:
>>>>> What is the reason for using int instead of uint in the precomputed
>>>>> DofMap?
>>>>>
>>>> I didn't make it int, but I suspect that it is to leave open the
>>>> possibility of using negative indexes which some libraries (e.g. PETSc)
>>>> treat differently during insertion.
>>> Negative indices will affect all backends. Does Trilinos support it?
>>>
>> Not sure. We can't guarantee that all backends will support it so I'm
>> inclined to use uint.
>>
>>>>> Also, would it be good to have the same DofMapBuilder::build()
>>>>> implementation both in parallel and serial. I imagine the algorithm
>>>>> will specialize to the case of one process. This will be useful to
>>>>> have once we add the localized iteration over cells on each mesh to
>>>>> minimize bandwidth.
>>>> DofMapBuilder::build() does not build the DofMap (name needs to be
>>>> changed).
>>> Yes, maybe DofMapRenumbering is better.
>>>
>>>> It renumbers the dofs and is not required when running in serial.
>>> I think it is. The FFC generated dof map does not do a very good job
>>> at minimizing bandwidth for vector-valued elements (or even scalar
>>> P2). I was hoping the same algorithm would work in both serial and
>>> parallel (less code to maintain).
>>>
>> This should work after splitting the current function into two
>> (ownership + renumbering). It looks to me like the present parallel
>> renumbering is more or less the UFC numbering on each process.
> 
> ok. I thought it also did local renumbering.
> 
>> There is some work to do (I'm about to commit something) to sort out
>> DofMap, so I'm not going to worry about the details of DofMapBuilder
>> until DofMap is sorted out and working.
> 
> ok, great. I'm thinking about adding some functionality for local
> iteration over mesh entities (continuing to the nearest unvisited
> neighbor). This should further improve the renumbering once we get
> the local renumbering in place.
> 

It would be nice if we could focus on the major items that are broken in 
parallel before getting into refinements.

Garth

> --
> Anders
> 
> 
>> Garth
>>
>>>> I have added a FIXME (might not have pushed it yet) that
>>>> DofMap::parallel_build needs to be broken into two functions. The first
>>>> function should determine ownership of dofs when running in parallel,
>>>> and the second does the re-numbering.
>>>>
>>>> Garth
>>>>
>>>> _______________________________________________
>>>> DOLFIN-dev mailing list
>>>> DOLFIN-dev@fenics.org
>>>> http://www.fenics.org/mailman/listinfo/dolfin-dev
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> _______________________________________________
>>>> DOLFIN-dev mailing list
>>>> DOLFIN-dev@fenics.org
>>>> http://www.fenics.org/mailman/listinfo/dolfin-dev
>>
>> _______________________________________________
>> DOLFIN-dev mailing list
>> DOLFIN-dev@fenics.org
>> http://www.fenics.org/mailman/listinfo/dolfin-dev
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> DOLFIN-dev mailing list
>> DOLFIN-dev@fenics.org
>> http://www.fenics.org/mailman/listinfo/dolfin-dev


_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@fenics.org
http://www.fenics.org/mailman/listinfo/dolfin-dev

Reply via email to