/[MITgcm]/MITgcm/pkg/flt/exch_recv_get_vec.F
ViewVC logotype

Diff of /MITgcm/pkg/flt/exch_recv_get_vec.F

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

revision 1.1 by adcroft, Thu Sep 13 17:43:55 2001 UTC revision 1.2 by jmc, Tue Oct 9 00:04:53 2007 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2    C $Name$
3    
4  #include "CPP_OPTIONS.h"  #include "CPP_OPTIONS.h"
5  #include "CPP_EEOPTIONS.h"  #include "CPP_EEOPTIONS.h"
6    
# Line 22  C     == Global variables == Line 24  C     == Global variables ==
24    
25  C     == Routine arguments ==  C     == Routine arguments ==
26  C     arrayE - Arrays to exchange be exchanged.  C     arrayE - Arrays to exchange be exchanged.
27  C     arrayW  C     arrayW
28  C     myd1   - sizes.  C     myd1   - sizes.
29  C     myd2  C     myd2
30  C     theSimulationMode - Forward or reverse mode exchange ( provides  C     theSimulationMode - Forward or reverse mode exchange ( provides
# Line 57  C                                  tile Line 59  C                                  tile
59  #endif  #endif
60    
61    
62  C--   Under a "put" scenario we  C--   Under a "put" scenario we
63  C--     i. set completetion signal for buffer we put into.  C--     i. set completetion signal for buffer we put into.
64  C--    ii. wait for completetion signal indicating data has been put in  C--    ii. wait for completetion signal indicating data has been put in
65  C--        our buffer.  C--        our buffer.
66  C--   Under a messaging mode we "receive" the message.  C--   Under a messaging mode we "receive" the message.
67  C--   Under a "get" scenario we  C--   Under a "get" scenario we
# Line 98  c     &      theProc,theTag,theSize,(arr Line 100  c     &      theProc,theTag,theSize,(arr
100  c         endif  c         endif
101  c         endif  c         endif
102  #ifndef ALWAYS_USE_MPI  #ifndef ALWAYS_USE_MPI
103          ENDIF                          ENDIF
104  #endif  #endif
105  #endif /* ALLOW_USE_MPI */  #endif /* ALLOW_USE_MPI */
106          ENDIF          ENDIF
# Line 115  c         endif Line 117  c         endif
117       &                  theProc, theTag, MPI_COMM_MODEL,       &                  theProc, theTag, MPI_COMM_MODEL,
118       &                  mpiStatus, mpiRc )       &                  mpiStatus, mpiRc )
119  #ifndef ALWAYS_USE_MPI  #ifndef ALWAYS_USE_MPI
120          ENDIF                          ENDIF
121  #endif  #endif
122  #endif /* ALLOW_USE_MPI */  #endif /* ALLOW_USE_MPI */
123          ENDIF          ENDIF
# Line 157  c          CALL MPI_Waitall( exchVReqsX( Line 159  c          CALL MPI_Waitall( exchVReqsX(
159            CALL MPI_Waitall( exchNReqsX(1,bi,bj), exchReqIdX(1,1,bi,bj),            CALL MPI_Waitall( exchNReqsX(1,bi,bj), exchReqIdX(1,1,bi,bj),
160       &                      mpiStatus, mpiRC )       &                      mpiStatus, mpiRC )
161  #ifndef ALWAYS_USE_MPI  #ifndef ALWAYS_USE_MPI
162          ENDIF                          ENDIF
163  #endif  #endif
164  #endif /* ALLOW_USE_MPI */  #endif /* ALLOW_USE_MPI */
165           ENDIF           ENDIF
# Line 217  C     == Global variables == Line 219  C     == Global variables ==
219    
220  C     == Routine arguments ==  C     == Routine arguments ==
221  C     arrayN - Arrays to exchange be exchanged.  C     arrayN - Arrays to exchange be exchanged.
222  C     arrayS  C     arrayS
223  C     myd1   - sizes.  C     myd1   - sizes.
224  C     myd2  C     myd2
225  C     theSimulationMode - Forward or reverse mode exchange ( provides  C     theSimulationMode - Forward or reverse mode exchange ( provides
# Line 251  C                                  tile Line 253  C                                  tile
253  #endif  #endif
254    
255    
256  C--   Under a "put" scenario we  C--   Under a "put" scenario we
257  C--     i. set completetion signal for buffer we put into.  C--     i. set completetion signal for buffer we put into.
258  C--    ii. wait for completetion signal indicating data has been put in  C--    ii. wait for completetion signal indicating data has been put in
259  C--        our buffer.  C--        our buffer.
260  C--   Under a messaging mode we "receive" the message.  C--   Under a messaging mode we "receive" the message.
261  C--   Under a "get" scenario we  C--   Under a "get" scenario we
# Line 283  C--   iii. Set data read flag + memory s Line 285  C--   iii. Set data read flag + memory s
285       &                  theProc, theTag, MPI_COMM_MODEL,       &                  theProc, theTag, MPI_COMM_MODEL,
286       &                  mpiStatus, mpiRc )       &                  mpiStatus, mpiRc )
287  #ifndef ALWAYS_USE_MPI  #ifndef ALWAYS_USE_MPI
288          ENDIF                          ENDIF
289  #endif  #endif
290  #endif /* ALLOW_USE_MPI */  #endif /* ALLOW_USE_MPI */
291          ENDIF          ENDIF
# Line 300  C--   iii. Set data read flag + memory s Line 302  C--   iii. Set data read flag + memory s
302       &                  theProc, theTag, MPI_COMM_MODEL,       &                  theProc, theTag, MPI_COMM_MODEL,
303       &                  mpiStatus, mpiRc )       &                  mpiStatus, mpiRc )
304  #ifndef ALWAYS_USE_MPI  #ifndef ALWAYS_USE_MPI
305          ENDIF                          ENDIF
306  #endif  #endif
307  #endif /* ALLOW_USE_MPI */  #endif /* ALLOW_USE_MPI */
308          ENDIF          ENDIF
# Line 342  c          CALL MPI_Waitall( exchVReqsY( Line 344  c          CALL MPI_Waitall( exchVReqsY(
344            CALL MPI_Waitall( exchNReqsY(1,bi,bj), exchReqIdY(1,1,bi,bj),            CALL MPI_Waitall( exchNReqsY(1,bi,bj), exchReqIdY(1,1,bi,bj),
345       &                      mpiStatus, mpiRC )       &                      mpiStatus, mpiRC )
346  #ifndef ALWAYS_USE_MPI  #ifndef ALWAYS_USE_MPI
347          ENDIF                          ENDIF
348  #endif  #endif
349  #endif /* ALLOW_USE_MPI */  #endif /* ALLOW_USE_MPI */
350           ENDIF           ENDIF

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

  ViewVC Help
Powered by ViewVC 1.1.22