[Developers] [Patches] more efficient synchronisation of groups
tradke at aei.mpg.de
Mon Jul 3 06:38:11 CDT 2006
Tom Goodale wrote:
> Looks good. Just a few things to make the transition easier and safer:
> * This will eventually completely replace the current overloading of
> CCTK_SyncGroup, so the default CCTK_SyncGroup should now call
> * Overloading CCTK_SyncGroup should now produce a warning message saying
> this is deprecated and they should overload CCTK_SyncGroupByDirI.
> * The default for CCTK_SyncGroupByDirI should check for a NULL directions
> array and then call CCTK_SyncGroup in a loop if CCTK_SyncGroup has been
> overloaded. (This code will disappear once CCTK_SyncGroup is no longer
> The intent of this is that drivers should only need to overload one of the
> functions, we preserve the current behaviour for drivers which have not
> been updated yet, and that we will be able to remove the overloading of
> CCTK_SyncGroup once we are sure all drivers have converted to the new
Okay, sounds good. Do you want me to do this in a separate patch ?
I had an open question still on the argument types for
CCTK_SyncGroupsI(), currently the prototype is:
int CCTK_SyncGroupsI (const cGH *GH, int n_groups, const int *groups);
so the list of group indices is an int array. For fortran bindings,
shouldn't it be CCTK_INT ? But then all the other fortran wrappers
take 'int*' rather than 'CCTK_INT*' for passing a single group index.
I'm a bit confused here: do we implicitely assume that a fortran integer
is the same datatype as a C int ?
More information about the Developers