[MITgcm-devel] REAL4_IS_SLOW is broken

Martin Losch Martin.Losch at awi.de
Sat Oct 25 01:36:25 EDT 2008


Hi Chris,

after our telephone conversation yesterday, I quickly tried #undef  
REAL4_IS_SLOW, to see whether this has any effect on the quadcore  
performance. It compiles without any problems, but the code stops at  
the temperature == 0 test in ini_theta.F, some THETA values are zero.  
Actually many values are zero, not only temperature, because after  
exchange there are stripes of zeros along the tile edges in all grid  
fields (most of them are now real*4, but theta is still real*8).

Now, I did expect this to work right away, but since you and Dimitris  
have already gone through using the _RS -> real*4 business, maybe you  
remember what you did exacty, or maybe this is documented somewhere?

Our domain here at Weizmann is a cartesian grid, so I am NOT using  
exch2, as you might have with Dimitris. Do you have any idea, what's  
going on? If it's not so complicated to do I am willing to fix this  
in the code (never good to have feature that does not work, right?),  
otherwise we should include a comment in CPP_EEOPTIONS.h that this  
flag REAL4_IS_SLOW always needs to be defined

Martin



More information about the MITgcm-devel mailing list