1 |
C $Header$ |
C $Header$ |
2 |
|
C $Name$ |
3 |
C |
C |
4 |
C /==========================================================\ |
C /==========================================================\ |
5 |
C | EEPARAMS.h | |
C | EEPARAMS.h | |
57 |
& INDEX_K = 3, |
& INDEX_K = 3, |
58 |
& INDEX_NONE = 4 ) |
& INDEX_NONE = 4 ) |
59 |
|
|
60 |
|
|
61 |
|
C EXCH_IGNORE_CORNERS - Flag to select ignoring or |
62 |
|
C EXCH_UPDATE_CORNERS updating of corners during |
63 |
|
C an edge exchange. |
64 |
|
INTEGER EXCH_IGNORE_CORNERS |
65 |
|
INTEGER EXCH_UPDATE_CORNERS |
66 |
|
PARAMETER ( EXCH_IGNORE_CORNERS = 0, |
67 |
|
& EXCH_UPDATE_CORNERS = 1 ) |
68 |
|
|
69 |
|
C FORWARD_SIMULATION |
70 |
|
C REVERSE_SIMULATION |
71 |
|
INTEGER FORWARD_SIMULATION |
72 |
|
INTEGER REVERSE_SIMULATION |
73 |
|
PARAMETER ( FORWARD_SIMULATION = 0, |
74 |
|
& REVERSE_SIMULATION = 1 ) |
75 |
|
|
76 |
|
|
77 |
C Particularly weird and obscure voodoo numbers |
C Particularly weird and obscure voodoo numbers |
78 |
C lShare - This wants to be the length in |
C lShare - This wants to be the length in |
79 |
C [148]-byte words of the size of |
C [148]-byte words of the size of |
87 |
C and are declared REAL ARRA(lShare[148],LBUFF). |
C and are declared REAL ARRA(lShare[148],LBUFF). |
88 |
C Setting lShare[148] to 1 is like making these arrays |
C Setting lShare[148] to 1 is like making these arrays |
89 |
C one dimensional. |
C one dimensional. |
90 |
|
INTEGER cacheLineSize |
91 |
INTEGER lShare1 |
INTEGER lShare1 |
92 |
INTEGER lShare4 |
INTEGER lShare4 |
93 |
INTEGER lShare8 |
INTEGER lShare8 |
94 |
PARAMETER ( lShare1 = 8 * 32 ) |
PARAMETER ( cacheLineSize = 256 ) |
95 |
PARAMETER ( lShare4 = 2 * 32 ) |
PARAMETER ( lShare1 = cacheLineSize ) |
96 |
PARAMETER ( lShare8 = 1 * 32 ) |
PARAMETER ( lShare4 = cacheLineSize/4 ) |
97 |
|
PARAMETER ( lShare8 = cacheLineSize/8 ) |
98 |
|
|
99 |
C MAX_NO_THREADS - Maximum number of threads allowed. |
C MAX_NO_THREADS - Maximum number of threads allowed. |
100 |
C MAX_NO_PROCS - Maximum number of processes allowed. |
C MAX_NO_PROCS - Maximum number of processes allowed. |
101 |
C MAX_NO_BARRIERS - Maximum number of distinct thread "barriers" |
C MAX_NO_BARRIERS - Maximum number of distinct thread "barriers" |
102 |
INTEGER MAX_NO_THREADS |
INTEGER MAX_NO_THREADS |
103 |
PARAMETER ( MAX_NO_THREADS = 16 ) |
PARAMETER ( MAX_NO_THREADS = 32 ) |
104 |
INTEGER MAX_NO_PROCS |
INTEGER MAX_NO_PROCS |
105 |
PARAMETER ( MAX_NO_PROCS = 128 ) |
PARAMETER ( MAX_NO_PROCS = 128 ) |
106 |
INTEGER MAX_NO_BARRIERS |
INTEGER MAX_NO_BARRIERS |
111 |
C eeEndError initialisation/termination. |
C eeEndError initialisation/termination. |
112 |
C fatalError - Flag used to indicate that the model is ended with |
C fatalError - Flag used to indicate that the model is ended with |
113 |
C an error |
C an error |
114 |
COMMON /EEPARAMS_L/ eeBootError, fatalError, eeEndError |
COMMON /EEPARAMS_L/ eeBootError, fatalError, eeEndError, |
115 |
|
& useCubedSphereExchange |
116 |
LOGICAL eeBootError |
LOGICAL eeBootError |
117 |
LOGICAL eeEndError |
LOGICAL eeEndError |
118 |
LOGICAL fatalError |
LOGICAL fatalError |
119 |
|
LOGICAL useCubedSphereExchange |
120 |
|
|
121 |
C-- COMMON /EPARAMS_I/ Execution environment public integer variables. |
C-- COMMON /EPARAMS_I/ Execution environment public integer variables. |
122 |
C errorMessageUnit - Fortran IO unit for error messages |
C errorMessageUnit - Fortran IO unit for error messages |
150 |
C This assumes a simple cartesian |
C This assumes a simple cartesian |
151 |
C gridding of the threads which is not required elsewhere |
C gridding of the threads which is not required elsewhere |
152 |
C but that makes it easier. |
C but that makes it easier. |
153 |
|
C ioErrorCount - IO Error Counter. Set to zero initially and increased |
154 |
|
C by one every time an IO error occurs. |
155 |
COMMON /EEPARAMS_I/ errorMessageUnit, standardMessageUnit, |
COMMON /EEPARAMS_I/ errorMessageUnit, standardMessageUnit, |
156 |
& scrUnit1, scrUnit2, eeDataUnit, modelDataUnit, |
& scrUnit1, scrUnit2, eeDataUnit, modelDataUnit, |
157 |
& numberOfProcs, pidIO, myProcId, |
& numberOfProcs, pidIO, myProcId, |
158 |
& myPx, myPy, myXGlobalLo, myYGlobalLo, nThreads, |
& myPx, myPy, myXGlobalLo, myYGlobalLo, nThreads, |
159 |
& myBxLo, myBxHi, myByLo, myByHi, |
& myBxLo, myBxHi, myByLo, myByHi, |
160 |
& nTx, nTy |
& nTx, nTy, ioErrorCount |
161 |
INTEGER eeDataUnit |
INTEGER eeDataUnit |
162 |
INTEGER errorMessageUnit |
INTEGER errorMessageUnit |
163 |
|
INTEGER ioErrorCount(MAX_NO_THREADS) |
164 |
INTEGER modelDataUnit |
INTEGER modelDataUnit |
165 |
INTEGER myBxLo(MAX_NO_THREADS) |
INTEGER myBxLo(MAX_NO_THREADS) |
166 |
INTEGER myBxHi(MAX_NO_THREADS) |
INTEGER myBxHi(MAX_NO_THREADS) |