[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