/[MITgcm]/MITgcm/eesupp/inc/CPP_EEMACROS.h
ViewVC logotype

Diff of /MITgcm/eesupp/inc/CPP_EEMACROS.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.5 by cnh, Fri Sep 21 03:54:35 2001 UTC revision 1.10 by dimitri, Tue Apr 6 21:03:14 2004 UTC
# Line 97  C     performance. Line 97  C     performance.
97  #define RS_IS_REAL8  #define RS_IS_REAL8
98  #define _GLOBAL_SUM_R4(a,b) CALL GLOBAL_SUM_R8 ( a, b)  #define _GLOBAL_SUM_R4(a,b) CALL GLOBAL_SUM_R8 ( a, b)
99  #define _GLOBAL_MAX_R4(a,b) CALL GLOBAL_MAX_R8 ( a, b )  #define _GLOBAL_MAX_R4(a,b) CALL GLOBAL_MAX_R8 ( a, b )
100    #define _MPI_TYPE_RS MPI_DOUBLE_PRECISION
101  #else  #else
102  #define _RS Real*4  #define _RS Real*4
103  #define RS_IS_REAL4  #define RS_IS_REAL4
104  #define _GLOBAL_SUM_R4(a,b) CALL GLOBAL_SUM_R4 ( a, b )  #define _GLOBAL_SUM_R4(a,b) CALL GLOBAL_SUM_R4 ( a, b )
105  #define _GLOBAL_MAX_R4(a,b) CALL GLOBAL_MAX_R4 ( a, b )  #define _GLOBAL_MAX_R4(a,b) CALL GLOBAL_MAX_R4 ( a, b )
106    #define _MPI_TYPE_RS MPI_REAL
107  #endif  #endif
108  #define _EXCH_XY_R4(a,b) CALL EXCH_XY_RS ( a, b )  #define _EXCH_XY_R4(a,b) CALL EXCH_XY_RL ( a, b )
109  #define _EXCH_XYZ_R4(a,b) CALL EXCH_XYZ_RS ( a, b )  #define _EXCH_XYZ_R4(a,b) CALL EXCH_XYZ_RL ( a, b )
110    
111  #define _RL Real*8  #define _RL Real*8
112  #define _EXCH_XY_R8(a,b) CALL EXCH_XY_RL ( a, b )  #define _EXCH_XY_R8(a,b) CALL EXCH_XY_RL ( a, b )
113  #define _EXCH_XYZ_R8(a,b) CALL EXCH_XYZ_RL ( a, b )  #define _EXCH_XYZ_R8(a,b) CALL EXCH_XYZ_RL ( a, b )
114  #define _GLOBAL_SUM_R8(a,b) CALL GLOBAL_SUM_R8 ( a, b )  #define _GLOBAL_SUM_R8(a,b) CALL GLOBAL_SUM_R8 ( a, b )
115  #define _GLOBAL_MAX_R8(a,b) CALL GLOBAL_MAX_R8 ( a, b )  #define _GLOBAL_MAX_R8(a,b) CALL GLOBAL_MAX_R8 ( a, b )
116    #define _MPI_TYPE_RL MPI_DOUBLE_PRECISION
117    
118  #define _EXCH_XY_RS(a,b) CALL EXCH_XY_RS ( a, b )  #define _EXCH_XY_RS(a,b) CALL EXCH_XY_RL ( a, b )
119  #define _EXCH_XYZ_RS(a,b) CALL EXCH_XYZ_RS ( a, b )  #define _EXCH_XYZ_RS(a,b) CALL EXCH_XYZ_RL ( a, b )
120  #define _EXCH_XY_RL(a,b) CALL EXCH_XY_RL ( a, b )  #define _EXCH_XY_RL(a,b) CALL EXCH_XY_RL ( a, b )
121  #define _EXCH_XYZ_RL(a,b) CALL EXCH_XYZ_RL ( a, b )  #define _EXCH_XYZ_RL(a,b) CALL EXCH_XYZ_RL ( a, b )
122    
123    #define _MPI_TYPE_R4 MPI_REAL
124    #ifdef TARGET_SGI
125    #define _MPI_TYPE_R8 MPI_DOUBLE_PRECISION
126    #else
127    #define _MPI_TYPE_R8 MPI_REAL8
128    #endif
129    #define _R4 Real*4
130    #define _R8 Real*8
131    
132  C--   Control use of JAM routines for Artic network  C--   Control use of JAM routines for Artic network
133  C     These invoke optimized versions of "exchange" and "sum" that  C     These invoke optimized versions of "exchange" and "sum" that
134  C     utilize the programmable aspect of Artic cards.  C     utilize the programmable aspect of Artic cards.
# Line 145  C     Sun compilers do not use 8-byte pr Line 157  C     Sun compilers do not use 8-byte pr
157  C     unless .Dnn is specified. CRAY vector machines use 16-byte  C     unless .Dnn is specified. CRAY vector machines use 16-byte
158  C     precision when they see .Dnn which runs very slowly!  C     precision when they see .Dnn which runs very slowly!
159  #ifdef REAL_D0_IS_16BYTES  #ifdef REAL_D0_IS_16BYTES
160  #define _d  #define _d E
161  #define _F64( a ) a  #define _F64( a ) a
162  #endif  #endif
163  #ifndef REAL_D0_IS_16BYTES  #ifndef REAL_D0_IS_16BYTES

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.10

  ViewVC Help
Powered by ViewVC 1.1.22