[MITgcm-devel] globalFiles

Dimitris Menemenlis menemenlis at sbcglobal.net
Sun Nov 6 21:35:40 EST 2005


Salut Jean-Michel,

> I also tried useSingleCpuIO=T, and get better results, but
> still have problems when using globalFiles=T. with files
> written by write_local_rl/rs (i.e. called within bi,bj loops).

Another problem with useSingleCpuIO is that it is not thread-safe.  For 
example ini_depths.F has

         _BEGIN_MASTER( myThid )
         CALL READ_REC_XY_RS( bathyFile, R_low, 1, 0, myThid )
         _END_MASTER(myThid)

and if useSingleCpuIO=T, it eventually calls SCATTER_2D, which contains 
_BARRIER statements.  So multi-threaded code just hangs.  Same problem 
with ini_theta.F, ini_salt.F, and checkpoint.F.  Can we remove these 
BEGIN/END_MASTER statements?  I think that they are redundant since they 
are also included in MDSREADFIELD, which is called by READ_REC_*.

Same problem happens with write_grid.F and possibly other output 
routines.  That is, it contains BEGIN/END_MASTER and eventually calls 
MDSWRITEFIELD_NEW, which contains _BARRIER statements.

Dimitris

-- 
Dimitris Menemenlis <menemenlis at jpl.nasa.gov>
Jet Propulsion Lab, California Institute of Technology
MS 300-323, 4800 Oak Grove Dr, Pasadena CA 91109-8099
tel: 818-354-1656;  fax: 818-393-6720



More information about the MITgcm-devel mailing list