Commit c86848ce authored by degironc's avatar degironc

variable world_comm renamed to make clear it is a local one, and declared explicitely in both

mp_start_diag and init_ortho_group



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13639 c92efa57-630b-4861-b058-cf58834340f0
parent 3e20b431
...@@ -57,7 +57,7 @@ CONTAINS ...@@ -57,7 +57,7 @@ CONTAINS
! communicators are created ! communicators are created
LOGICAL, INTENT(IN) :: do_distr_diag_inside_bgrp_ ! comme son nom l'indique LOGICAL, INTENT(IN) :: do_distr_diag_inside_bgrp_ ! comme son nom l'indique
! !
INTEGER :: world_comm = -1 ! internal copy of the world_comm (-1 is unset, should be set to MPI_COMM_WORLD) INTEGER :: world_comm_local = -1 ! internal copy of the world_comm (-1 is unset, should be set to MPI_COMM_WORLD)
INTEGER :: mpime = 0 ! the global MPI task index (used in clocks) can be set with a mp_rank call INTEGER :: mpime = 0 ! the global MPI task index (used in clocks) can be set with a mp_rank call
! !
INTEGER :: nproc_ortho_try INTEGER :: nproc_ortho_try
...@@ -67,10 +67,9 @@ CONTAINS ...@@ -67,10 +67,9 @@ CONTAINS
INTEGER :: nparent_comm ! mumber of parent communicators INTEGER :: nparent_comm ! mumber of parent communicators
INTEGER :: ierr = 0 INTEGER :: ierr = 0
! !
write (*,*) 'world_comm ', world_comm , MPI_COMM_WORLD world_comm_local = MPI_COMM_WORLD ! set the internal copy of the world_comm to be possibly used in other related routines
world_comm = MPI_COMM_WORLD ! set the internal copy of the world_comm to be possibly used in other related routines world_nproc = mp_size( world_comm_local ) ! the global number of processors in world_comm
world_nproc = mp_size( world_comm ) ! the global number of processors in world_comm mpime = mp_rank( world_comm_local ) ! set the global MPI task index (used in clocks)
mpime = mp_rank( world_comm ) ! set the global MPI task index (used in clocks)
parent_nproc = mp_size( parent_comm )! the number of processors in the current parent communicator parent_nproc = mp_size( parent_comm )! the number of processors in the current parent communicator
my_parent_id = mpime / parent_nproc ! set the index of the current parent communicator my_parent_id = mpime / parent_nproc ! set the index of the current parent communicator
nparent_comm = world_nproc/parent_nproc ! number of paren communicators nparent_comm = world_nproc/parent_nproc ! number of paren communicators
...@@ -80,15 +79,15 @@ CONTAINS ...@@ -80,15 +79,15 @@ CONTAINS
! !
#if defined __SCALAPACK #if defined __SCALAPACK
np_blacs = mp_size( world_comm ) np_blacs = mp_size( world_comm_local )
me_blacs = mp_rank( world_comm ) me_blacs = mp_rank( world_comm_local )
! !
! define a 1D grid containing all MPI tasks of the global communicator ! define a 1D grid containing all MPI tasks of the global communicator
! NOTE: world_cntx has the MPI communicator on entry and the BLACS context on exit ! NOTE: world_cntx has the MPI communicator on entry and the BLACS context on exit
! BLACS_GRIDINIT() will create a copy of the communicator, which can be ! BLACS_GRIDINIT() will create a copy of the communicator, which can be
! later retrieved using CALL BLACS_GET(world_cntx, 10, comm_copy) ! later retrieved using CALL BLACS_GET(world_cntx, 10, comm_copy)
! !
world_cntx = world_comm world_cntx = world_comm_local
CALL BLACS_GRIDINIT( world_cntx, 'Row', 1, np_blacs ) CALL BLACS_GRIDINIT( world_cntx, 'Row', 1, np_blacs )
! !
#endif #endif
...@@ -140,6 +139,8 @@ CONTAINS ...@@ -140,6 +139,8 @@ CONTAINS
#endif #endif
#if defined __MPI #if defined __MPI
INTEGER :: world_comm_local = -1 ! internal copy of the world_comm (-1 is unset, should be set to MPI_COMM_WORLD)
world_comm_local = MPI_COMM_WORLD ! set the internal copy of the world_comm to be possibly used in other related routines
me_all = mp_rank( comm_all ) me_all = mp_rank( comm_all )
! !
...@@ -249,7 +250,7 @@ CONTAINS ...@@ -249,7 +250,7 @@ CONTAINS
! All MPI tasks defined in the global communicator take part in the definition of the BLACS grid ! All MPI tasks defined in the global communicator take part in the definition of the BLACS grid
CALL mp_sum( blacsmap, world_comm ) CALL mp_sum( blacsmap, world_comm_local )
CALL BLACS_GRIDMAP( ortho_cntx_pe( j ), blacsmap, nprow, nprow, npcol ) CALL BLACS_GRIDMAP( ortho_cntx_pe( j ), blacsmap, nprow, nprow, npcol )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment