/[MITgcm]/MITgcm/eesupp/src/eewrite_eeenv.F
ViewVC logotype

Annotation of /MITgcm/eesupp/src/eewrite_eeenv.F

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


Revision 1.6 - (hide annotations) (download)
Sun Feb 4 14:38:43 2001 UTC (23 years, 3 months ago) by cnh
Branch: MAIN
CVS Tags: checkpoint40pre3, checkpoint40pre1, checkpoint40pre7, checkpoint40pre6, checkpoint40pre9, checkpoint40pre8, checkpoint38, checkpoint40pre2, checkpoint40pre4, pre38tag1, c37_adj, pre38-close, checkpoint39, checkpoint37, checkpoint36, checkpoint35, checkpoint40pre5, checkpoint40
Branch point for: pre38
Changes since 1.5: +2 -1 lines
Made sure each .F and .h file had
the CVS keywords Header and Name at its start.
Most had header but very few currently have Name, so
lots of changes!

1 cnh 1.6 C $Header: /u/gcmpack/models/MITgcmUV/eesupp/src/eewrite_eeenv.F,v 1.5 1999/05/18 17:39:21 adcroft Exp $
2     C $Name: $
3 cnh 1.1
4     #include "CPP_EEOPTIONS.h"
5    
6     CStartOfInterface
7     SUBROUTINE EEWRITE_EEENV
8     C /==========================================================\
9     C | SUBROUTINE EERWITE_EEENV |
10     C | o Write execution environment summary |
11     C |==========================================================|
12     C | Write a summary of the execution environment as |
13     C | configured for this run. The execution environment is |
14     C | the computational mode in which the model operatoes. It |
15     C | includes the computational grid but does not include any |
16     C | model specific nuerical parameters. |
17     C \==========================================================/
18 adcroft 1.5 IMPLICIT NONE
19 cnh 1.1
20     C === Global data ===
21     #include "SIZE.h"
22     #include "EEPARAMS.h"
23     #include "EESUPPORT.h"
24    
25     CEndOfInterface
26    
27     C === Local variables ===
28     CHARACTER*(MAX_LEN_MBUF) msgBuf
29    
30 cnh 1.4 WRITE(msgBuf,'(A)')
31     & '// ======================================================='
32 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
33     & SQUEEZE_RIGHT , 1)
34    
35 cnh 1.4 WRITE(msgBuf,'(A)')
36     & '// Computational Grid Specification ( see files "SIZE.h" )'
37 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
38     & SQUEEZE_RIGHT , 1)
39    
40 cnh 1.4 WRITE(msgBuf,'(A)')
41     & '// ( and "eedata" )'
42 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
43     & SQUEEZE_RIGHT , 1)
44    
45 cnh 1.4 WRITE(msgBuf,'(A)')
46     & '// ======================================================='
47 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
48     & SQUEEZE_RIGHT , 1)
49    
50 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' nPx =',nPx,
51     & ' ; /* No. processes in X */'
52 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
53     & SQUEEZE_RIGHT , 1)
54    
55 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' nPy =',nPy,
56     & ' ; /* No. processes in Y */'
57 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
58     & SQUEEZE_RIGHT , 1)
59    
60 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' nSx =',nSx,
61     & ' ; /* No. tiles in X per process */'
62 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
63     & SQUEEZE_RIGHT , 1)
64    
65 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' nSy =',nSy,
66     & ' ; /* No. tiles in Y per process */'
67 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
68     & SQUEEZE_RIGHT , 1)
69    
70 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' sNx =',sNx,
71     & ' ; /* Tile size in X */'
72 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
73     & SQUEEZE_RIGHT , 1)
74    
75 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' sNy =',sNy,
76     & ' ; /* Tile size in Y */'
77 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
78     & SQUEEZE_RIGHT , 1)
79    
80     WRITE(msgBuf,'(A,I5,A)') ' OLx =',OLx,
81     & ' ; /* Tile overlap distance in X */'
82     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
83     & SQUEEZE_RIGHT , 1)
84    
85     WRITE(msgBuf,'(A,I5,A)') ' OLy =',OLy,
86     & ' ; /* Tile overlap distance in Y */'
87     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
88     & SQUEEZE_RIGHT , 1)
89    
90 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' nTx =',nTx,
91     & ' ; /* No. threads in X per process */'
92 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
93     & SQUEEZE_RIGHT , 1)
94    
95 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' nTy =',nTy,
96     & ' ; /* No. threads in Y per process */'
97 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
98     & SQUEEZE_RIGHT , 1)
99    
100 cnh 1.4 WRITE(msgBuf,'(A,I5,A)') ' Nr =', Nr,
101     & ' ; /* No. levels in the vertical */ '
102 cnh 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
103     & SQUEEZE_RIGHT , 1)
104    
105     WRITE(msgBuf,'(A,I5,A)') ' nX =', nX,
106     & ' ; /* Total domain size in X ( = nPx*nSx*sNx ) */'
107     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
108     & SQUEEZE_RIGHT , 1)
109    
110     WRITE(msgBuf,'(A,I5,A)') ' nY =', nY,
111     & ' ; /* Total domain size in Y ( = nPy*nSy*sNy ) */'
112     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
113     & SQUEEZE_RIGHT , 1)
114    
115     WRITE(msgBuf,'(A,I5,A)') ' nTiles =', nSx*nSy,
116     & ' ; /* Total no. tiles per process ( = nSx*nSy ) */'
117     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
118     & SQUEEZE_RIGHT , 1)
119    
120     WRITE(msgBuf,'(A,I5,A)') ' nProcs =', nPx*nPy,
121     & ' ; /* Total no. processes ( = nPx*nPy ) */'
122     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
123     & SQUEEZE_RIGHT , 1)
124    
125     WRITE(msgBuf,'(A,I5,A)') 'nThreads =', nTx*nTy,
126     & ' ; /* Total no. threads per process ( = nTx*nTy ) */'
127     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
128     & SQUEEZE_RIGHT , 1)
129    
130     WRITE(msgBuf,'(A,L5,A)') 'usingMPI =', usingMPI,
131     & ' ; /* Flag used to control whether MPI is in use */'
132     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
133     & SQUEEZE_RIGHT , 1)
134    
135     WRITE(msgBuf,'(A,A,A)') ' ', ' ' ,
136     & ' /* note: To execute a program with MPI calls */'
137     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
138     & SQUEEZE_RIGHT , 1)
139    
140     WRITE(msgBuf,'(A,A,A)') ' ', ' ' ,
141     & ' /* it must be launched appropriately e.g */'
142     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
143     & SQUEEZE_RIGHT , 1)
144    
145     WRITE(msgBuf,'(A,A,A)') ' ', ' ' ,
146     & ' /* "mpirun -np 64 ......" */'
147     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
148     & SQUEEZE_RIGHT , 1)
149    
150     WRITE(msgBuf,'(A)') ' '
151     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
152     & SQUEEZE_RIGHT , 1)
153    
154     C
155     RETURN
156     END

  ViewVC Help
Powered by ViewVC 1.1.22