dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #26142
Re: Fwd: Re: unsigned int -> std::size_t
On Thu, Nov 15, 2012 at 7:43 AM, Johan Hake <hake.dev@xxxxxxxxx> wrote:
> Would it be possible to move DofMaps to dolfin/la and make them backend
> specific?
>
I don't see any real benefit to this and it would make things more complicated.
Having a single index type will not cause any new problems - DOLFIN
has only ever had a single index type. A user has to either pick a
backend to use, or make sure that the backends are configured with
compatible index types. It Tpetera from Trilinos ever takes off, the
Trilinos backend will be trivial because Tepetra takes the index type
as a template argument.
Garth
> Johan
>
> On 11/15/2012 08:16 AM, Garth N. Wells wrote:
>> On Thu, Nov 15, 2012 at 6:37 AM, Martin Sandve Alnæs <martinal@xxxxxxxxx> wrote:
>>> ---------- Videresendt melding ----------
>>> Fra:
>>> Dato: 15. nov. 2012 07:35
>>> Emne: Re: [Dolfin] unsigned int -> std::size_t
>>> Til: "Garth N. Wells" <gnw20@xxxxxxxxx>
>>>
>>>
>>> A typedef for the chosen linear algebra backend? How is that possible with
>>> dynamic choice of backend?
>>>
>>
>> A 'primary' backend will need to be decided at configure time, and the
>> index type will match the index type of the primary backend. I don't
>> see any way to get around this. Templating some functions will not
>> help because the dof map needs to use a compatible index type, and
>> this would tie a dof map to a backend (and templates will make the
>> code more complicated).
>>
>> At present we just assume that all backends use an index type that is
>> compatible with unsigned int, but we can't justify this assumption.
>> Flaws in DOLFIN la handling have shown up with the release of Trilinos
>> 11, which introduces 64-bit ints to its interface. PETSc uses
>> PetscInt, and we have just assumed that it's compatible with unsigned
>> int.
>>
>> Garth
>>
>>
>>> Martin
>>>
>>> Den 14. nov. 2012 18:06 skrev "Garth N. Wells" <gnw20@xxxxxxxxx> følgende:
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~dolfin
>>> Post to : dolfin@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~dolfin
>>> More help : https://help.launchpad.net/ListHelp
>>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~dolfin
>> Post to : dolfin@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~dolfin
>> More help : https://help.launchpad.net/ListHelp
>>
>
References