1 | include(dom.inc)
2 |
3 | SUBROUTINE pmm_sendvectors(d_buffer, d_buffersize, iproc)
4 |
5 | ! ================================================================!
6 | ! !
7 | ! pmm_sendvectors.F : Do MPI calls to send global data from !
8 | ! master to slaves !
9 | ! !
10 | ! out : !
11 | ! !
12 | ! author : J. AMAYA (october 2007) !
13 | ! !
14 | ! ================================================================!
15 |
16 | USE mod_pmm
17 |
18 | IMPLICIT NONE
19 |
20 | include 'pmm_constants.h'
21 |
22 | ! IN
23 | DOM_INT :: d_buffersize, iproc
24 | DOM_REAL, DIMENSION(d_buffersize) :: d_buffer
25 |
26 | ! LOCAL
27 | DOM_INT :: ierr
28 |
29 | ! -----------------------!
30 | ! Send buffers to slaves !
31 | ! -----------------------!
32 |
33 | ! print*, " MASTER: Sending vectors to proc ", iproc
34 |
35 | IF ((iproc-1).eq.PMM_HOST) THEN
36 |
37 | CALL slave_vectors(d_buffer,d_buffersize)
38 |
39 | ELSE
40 |
41 | CALL MPI_SEND(d_buffer, d_buffersize, MPI_DOUBLE_PRECISION, &
42 | & iproc-1,PMM_INVECTORS, MPI_COMM_WORLD, ierr)
43 |
44 | ENDIF
45 |
46 | END SUBROUTINE pmm_sendvectors
pmm_sendvectors.F could be called by: