[Mitgcm-support] Re: exchange of floats
mitgcm-support at dev.mitgcm.org
mitgcm-support at dev.mitgcm.org
Wed Jul 9 15:41:50 EDT 2003
Alistair,
do you think a global gather (e.g. with global_max because only one tile
has values for a specific float, on all other tiles this float has zero
values) followed by a complete redistribution (as in the beginning)
would be too cost-intensive?
Arne
Alistair Adcroft wrote:
>
> This is a classic problem with particle methods and there's
> a huge literature on it but as far as I know the only way
> to do this robustly is to have a trajectory phase and a
> re-ditribution phase and in that redistribution all tiles
> send/receive to their neighbours (you can at least assume
> nearest neighbour communication only). You shouldn't
> do each phase for each float but instead do all floats
> in each phase.
>
> The naive algorithm would have to communicate
> eight times per tiles (N,NE,E,SE,S,SW,W,NW).
>
> A faster way would be to do all the east-west
> exchanges first; if a tile goes to the NE then
> send it to the east, then all the north-south exchanges;
> the float that went NE is now in the N and is sent to
> the right neighbour. This has four instead of eight
> send/receives.
>
> A.
--
Dr. Arne Biastoch
Scripps Institution of Oceanography phone: +1-858-822-3787
Physical Oceanography Research Division fax : +1-858-534-9820
MS: 0230 email: abiastoch at ucsd.edu
8605 La Jolla Shores Dr.
La Jolla, CA 92093-0230, U.S.A. http://www.ecco.ucsd.edu/~biastoch
More information about the MITgcm-support
mailing list