The following files have currently been added or customized for general topology communications. TBD o for general _RS _RL support the .template forms of exch_ and exch2_ need modifying/creating. o MDS based I/O needs to be modified to use tile base coodinates and not to assume a funcional relationship between nsx, snx etc... w2_e2setup.F # Does main setting of topology arrays # File is generated from matlab W2_EXCH2_TOPOLOGY.h # Holds topology arrays # File is generated from matlab exch2_xyz_rl.F # Does parallel communication for W2 topology exch2_xy_rl.F # Does parallel communication for W2 topology exch2_uv_xyz_rl.F # Does parallel communication for W2 topology exch2_uv_xy_rl.F # Does parallel communication for W2 topology exch2_rl2_cube.F # Does parallel communication for W2 topology exch2_rl1_cube.F # Does parallel communication for W2 topology exch2_get_send_bounds.F # Does parallel communication for W2 topology exch2_get_recv_bounds.F # Does parallel communication for W2 topology eeboot.F # Modified to call W2 toplogy setup w2_print_comm_sequence.F # Prints out comms defined by a topology W2_EXCH2_PARAMS.h # Mapping between topology and tiled arrays in MITgcm W2_OPTIONS.h # Debug options CPP_EEMACROS.h # Changed to map exch_ to exch2_ EEPARAMS.h # Buffer sized modded for debugging and testing SIZE.h # Modified to match topology # Needs to be consistent with # W2_EXCH2_TOPOLOGY.h and # w2_e2setup.F CPP_EEOPTIONS.h w2_eeboot.F # Drives setting of topology arrays ini_curvilinear_grid.F # Reads multi-domain grid definition including overlap # point at index maxima (i.e. snx+1, sny+1) exch_uv_xy_rs.F # call exch2_ exch_uv_xyz_rs.F # call exch2_ exch_uv_xyz_rl.F # call exch2_ exch_uv_xy_rl.F # call exch2_ exch_xy_rl.F # call exch2_ exch2_send_rl1.F # Does parallel communication for W2 topology exch2_send_rl2.F # Does parallel communication for W2 topology exch2_recv_rl1.F # Does parallel communication for W2 topology exch2_recv_rl2.F # Does parallel communication for W2 topology mom_vi_calc_relvort3.F # Vorticity switched off for testing Directories holding example SIZE.h, w2_e2setup.F and W2_EXCH2_TOPOLOGY.h are as follows. Examples are all for a cs32 index space with different tile sizes. Until mdsio is fixed to understand tiling only s6t_32x32/, s24t_8x32/ and s12t_16x32/ are allowed for runs that rely on global datasets for input (bathymetry, forcing, pickups etc..) because the cube global file mode only looks like the cartesian form when sny is the same as the cube size. However, it is possible to arbitrary size tile runs when using tiled input files. s12t_16x32/ # 12 tiles of size 16x32 s24t_16x16/ # 24 tiles of size 16x16 (I/O not available) s24t_32x8/ # 24 tiles of size 32x8 (I/O not available) s24t_8x32/ # 24 tiles of size 8x32 s6t_32x32/ # 6 tiles of size 32x32 s60t_51x510 # 60 tiles of size 51x510