Statistics
| Branch: | Revision:

root / synthbench / euroben-dm / mod2g / cntdpls.f @ 0:839f52ef7657

History | View | Annotate | Download (1023 Bytes)

1
      Subroutine cntdpls( sizes, scnts, sdpls, rcnts, rdpls )
2
! --------------------------------------------------------------------
3
! --- Fills the arrays describing the various sizes of the blocks
4
!     that are sent trough alltoallv and reordered afterwards.
5
! --------------------------------------------------------------------
6
      Use        dist_module ! Contains #procs and no.s
7
      Implicit   None
8

    
9
      Integer :: sizes(0:nodes-1,2),
10
     &           scnts(0:nodes-1), sdpls(0:nodes-1),
11
     &           rcnts(0:nodes-1), rdpls(0:nodes-1)
12

    
13
      Integer :: k
14
! --------------------------------------------------------------------
15
      scnts = sizes(me,2)*sizes(:,1)
16
      sdpls(0) = 0
17
      Do k = 1, nodes - 1
18
         sdpls(k) = sdpls(k-1) + scnts(k-1)
19
      End Do
20
      rcnts = sizes(me,1)*sizes(:,2)
21
      rdpls(0) = 0
22
      Do k = 1, nodes - 1
23
         rdpls(k) = rdpls(k-1) + rcnts(k-1)
24
      End Do
25
! --------------------------------------------------------------------
26
      End Subroutine cntdpls