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

Contents of /MITgcm/eesupp/inc/GLOBAL_SUM.h

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


Revision 1.8 - (show annotations) (download)
Wed Jun 10 03:45:11 2009 UTC (14 years, 9 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint62v, checkpoint62u, checkpoint62t, checkpoint65z, checkpoint65x, checkpoint65y, checkpoint65r, checkpoint65s, checkpoint65p, checkpoint65q, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65l, checkpoint65m, checkpoint65b, checkpoint65c, checkpoint65a, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e, checkpoint62c, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62w, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint63g, checkpoint64, checkpoint65, checkpoint62, checkpoint63, checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint63p, checkpoint63q, checkpoint63r, checkpoint63s, checkpoint63l, checkpoint63m, checkpoint63n, checkpoint63o, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint65o, checkpoint62b, checkpoint64y, checkpoint64x, checkpoint64z, checkpoint64q, checkpoint64p, checkpoint64s, checkpoint64r, checkpoint64u, checkpoint64t, checkpoint64w, checkpoint64v, checkpoint64i, checkpoint64h, checkpoint64k, checkpoint64j, checkpoint64m, checkpoint64l, checkpoint64o, checkpoint64n, checkpoint64a, checkpoint64c, checkpoint64b, checkpoint64e, checkpoint64d, checkpoint64g, checkpoint64f, checkpoint61q, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61z, checkpoint61x, checkpoint61y, HEAD
Changes since 1.7: +11 -11 lines
File MIME type: text/plain
- change name of buffer (R4,R8 instead of RS,RL) to match buffer type
- add one more element to buffer (start at index 0) for GLOB_MAX/SUM output

1 C $Header: /u/gcmpack/MITgcm/eesupp/inc/GLOBAL_SUM.h,v 1.7 2007/09/04 14:41:24 jmc Exp $
2 C $Name: $
3 CBOP
4 C !ROUTINE: GLOBAL_SUM.h
5 C !INTERFACE:
6 C include "GLOBAL_SUM.h"
7 C !DESCRIPTION:
8 C *==========================================================*
9 C | GLOBAL\_SUM.h
10 C | o Globals used by Fortran global sum routine.
11 C *==========================================================*
12 C | The global sum shared memory scheme uses global heap data|
13 C | structures (.i.e COMMON blocks ). Each thread writes to |
14 C | an its own element of the shared memory array and then |
15 C | one thread reads all the entries and sums them. The sum |
16 C | result is then read by all threads. |
17 C | Remember - you are working with regions of memory that |
18 C | are being updated concurrently by different threads. |
19 C | What happens, when it happens and who gets to see what |
20 C | happens at what stage depends on the computer systems |
21 C | memory model. Every computer has a different memory model|
22 C | and they are never simple. In all current platforms it is|
23 C | possible for one thread to see events happening in a |
24 C | different order from the order they are written in the |
25 C | code. |
26 C | Unless you understand this it is not a good idea to |
27 C | make modifications te way these header files are setup or|
28 C | the way the global sum routines work. |
29 C *==========================================================*
30 CEOP
31
32 COMMON / GSUM_COMMON_R8 / phiGSR8, shareBufGSR8
33 c & , phiVGSR8
34 Real*8 phiGSR8 (lShare8, 0:MAX_NO_THREADS )
35 Real*8 shareBufGSR8 ( nSx, nSy )
36 c Real*8 phivGSR8(MAX_VGS, 0:MAX_NO_THREADS )
37
38 COMMON / GSUM_COMMON_R4 / phiGSR4
39 c & , phiVGSR4
40 Real*4 phiGSR4 (lShare4, 0:MAX_NO_THREADS )
41 c Real*4 phivGSR4(MAX_VGS, 0:MAX_NO_THREADS )
42
43 COMMON / GSUM_COMMON_I / phiGSI
44 c & , phiVGSI
45 INTEGER phiGSI (lShare4, 0:MAX_NO_THREADS )
46 c INTEGER phivGSI (MAX_VGS, 0:MAX_NO_THREADS )
47
48 CEH3 ;;; Local Variables: ***
49 CEH3 ;;; mode:fortran ***
50 CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22