Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Incorporate simgrid-java in simgrid-java/.
[simgrid.git] / examples / smpi / NAS / MG / globals.h
1 c---------------------------------------------------------------------
2 c  Parameter lm (declared and set in "npbparams.h") is the log-base2 of 
3 c  the edge size max for the partition on a given node, so must be changed 
4 c  either to save space (if running a small case) or made bigger for larger 
5 c  cases, for example, 512^3. Thus lm=7 means that the largest dimension 
6 c  of a partition that can be solved on a node is 2^7 = 128. lm is set 
7 c  automatically in npbparams.h
8 c  Parameters ndim1, ndim2, ndim3 are the local problem dimensions. 
9 c---------------------------------------------------------------------
10
11       include 'npbparams.h'
12
13       integer nm      ! actual dimension including ghost cells for communications
14      >      , nv      ! size of rhs array
15      >      , nr      ! size of residual array
16      >      , nm2     ! size of communication buffer
17      >      , maxlevel! maximum number of levels
18
19       parameter( nm=2+2**lm, nv=(2+2**ndim1)*(2+2**ndim2)*(2+2**ndim3) )
20       parameter( nm2=2*nm*nm, maxlevel=(lt_default+1) )
21       parameter( nr = (8*(nv+nm**2+5*nm+14*lt_default-7*lm))/7 )
22       integer maxprocs
23       parameter( maxprocs = 131072 )  ! this is the upper proc limit that 
24                                       ! the current "nr" parameter can handle
25 c---------------------------------------------------------------------
26       integer nbr(3,-1:1,maxlevel), msg_type(3,-1:1)
27       integer  msg_id(3,-1:1,2),nx(maxlevel),ny(maxlevel),nz(maxlevel)
28       common /mg3/ nbr,msg_type,msg_id,nx,ny,nz
29
30       character class
31       common /ClassType/class
32
33       integer debug_vec(0:7)
34       common /my_debug/ debug_vec
35
36       integer ir(maxlevel), m1(maxlevel), m2(maxlevel), m3(maxlevel)
37       integer lt, lb
38       common /fap/ ir,m1,m2,m3,lt,lb
39
40       logical dead(maxlevel), give_ex(3,maxlevel), take_ex(3,maxlevel)
41       common /comm_ex/ dead, give_ex, take_ex
42
43 c---------------------------------------------------------------------
44 c  Set at m=1024, can handle cases up to 1024^3 case
45 c---------------------------------------------------------------------
46       integer m
47 c      parameter( m=1037 )
48       parameter( m=nm+1 )
49
50       double precision buff(nm2,4)
51       common /buffer/ buff
52
53
54
55