Commit baac8bdc authored by giannozz's avatar giannozz

Broadcast of xml input should be done, like broadcast ot text input,

on intra_image_comm, not on world_comm


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/[email protected] c92efa57-630b-4861-b058-cf58834340f0
parent 0b865221
......@@ -12,7 +12,7 @@ MODULE read_xml_module
!
USE io_global, ONLY : ionode, ionode_id, xmlinputunit => qestdin
USE mp, ONLY : mp_bcast
USE mp_world, ONLY : world_comm
USE mp_images, ONLY : intra_image_comm
USE iotk_module, ONLY : iotk_attlenx
!
! ...default and checkin of fields
......@@ -138,9 +138,9 @@ CONTAINS
!
! ... bcast the read attributes
!
CALL mp_bcast( calculation, ionode_id, world_comm )
CALL mp_bcast( prefix, ionode_id, world_comm )
CALL mp_bcast( title, ionode_id, world_comm )
CALL mp_bcast( calculation, ionode_id, intra_image_comm )
CALL mp_bcast( prefix, ionode_id, intra_image_comm )
CALL mp_bcast( title, ionode_id, intra_image_comm )
!
! ... fixing some default values using the calculation variable
......@@ -239,7 +239,7 @@ CONTAINS
ENDIF
ENDIF
!
CALL mp_bcast( found_al, ionode_id, world_comm)
CALL mp_bcast( found_al, ionode_id, intra_image_comm)
!
IF (found_al) THEN
CALL card_bcast( 'ATOMIC_LIST' )
......@@ -341,7 +341,7 @@ CONTAINS
!
END IF
!
CALL mp_bcast ( found, ionode_id, world_comm )
CALL mp_bcast ( found, ionode_id, intra_image_comm )
!
IF ( found ) CALL card_bcast( 'CONSTRAINTS' )
!
......@@ -401,7 +401,7 @@ CONTAINS
!
END IF
!
CALL mp_bcast ( found, ionode_id, world_comm )
CALL mp_bcast ( found, ionode_id, intra_image_comm )
!
IF ( found ) CALL card_bcast( 'OCCUPATIONS' )
!
......@@ -432,7 +432,7 @@ CONTAINS
!
END IF
!
CALL mp_bcast ( found, ionode_id, world_comm )
CALL mp_bcast ( found, ionode_id, intra_image_comm )
!
IF ( found ) CALL card_bcast( 'CLIMBING_IMAGES' )
!
......@@ -552,7 +552,7 @@ CONTAINS
!
END IF
!
CALL mp_bcast ( found, ionode_id, world_comm )
CALL mp_bcast ( found, ionode_id, intra_image_comm )
!
IF ( found ) CALL card_bcast( 'CONSTRAINTS' )
!
......@@ -582,7 +582,7 @@ CONTAINS
!
END IF
!
CALL mp_bcast ( found, ionode_id, world_comm )
CALL mp_bcast ( found, ionode_id, intra_image_comm )
!
IF ( found ) CALL card_bcast( 'OCCUPATIONS' )
!
......@@ -613,7 +613,7 @@ CONTAINS
!
END IF
!
CALL mp_bcast ( found, ionode_id, world_comm )
CALL mp_bcast ( found, ionode_id, intra_image_comm )
!
IF ( found ) CALL card_bcast( 'CLIMBING_IMAGES' )
!
......@@ -644,7 +644,7 @@ CONTAINS
!
END IF
!
CALL mp_bcast ( found, ionode_id, world_comm )
CALL mp_bcast ( found, ionode_id, intra_image_comm )
!
IF ( found ) CALL card_bcast( 'PLOT_WANNIER' )
!
......
......@@ -162,7 +162,7 @@ CONTAINS
USE io_global, ONLY : ionode, ionode_id
!
USE mp, ONLY : mp_bcast
USE mp_world, ONLY : world_comm
USE mp_images, ONLY : intra_image_comm
!
IMPLICIT NONE
!
......@@ -175,76 +175,76 @@ CONTAINS
!
!
CASE ( 'CELL' )
CALL mp_bcast( ibrav, ionode_id, world_comm )
CALL mp_bcast( celldm, ionode_id, world_comm )
CALL mp_bcast( A, ionode_id, world_comm )
CALL mp_bcast( B, ionode_id, world_comm )
CALL mp_bcast( C, ionode_id, world_comm )
CALL mp_bcast( cosAB, ionode_id, world_comm )
CALL mp_bcast( cosAC, ionode_id, world_comm )
CALL mp_bcast( cosBC, ionode_id, world_comm )
CALL mp_bcast( cell_units, ionode_id, world_comm )
CALL mp_bcast( rd_ht, ionode_id, world_comm )
CALL mp_bcast( trd_ht, ionode_id, world_comm )
CALL mp_bcast( ibrav, ionode_id, intra_image_comm )
CALL mp_bcast( celldm, ionode_id, intra_image_comm )
CALL mp_bcast( A, ionode_id, intra_image_comm )
CALL mp_bcast( B, ionode_id, intra_image_comm )
CALL mp_bcast( C, ionode_id, intra_image_comm )
CALL mp_bcast( cosAB, ionode_id, intra_image_comm )
CALL mp_bcast( cosAC, ionode_id, intra_image_comm )
CALL mp_bcast( cosBC, ionode_id, intra_image_comm )
CALL mp_bcast( cell_units, ionode_id, intra_image_comm )
CALL mp_bcast( rd_ht, ionode_id, intra_image_comm )
CALL mp_bcast( trd_ht, ionode_id, intra_image_comm )
!
CASE ( 'ATOMIC_SPECIES' )
CALL mp_bcast( ntyp, ionode_id, world_comm )
CALL mp_bcast( atom_mass, ionode_id, world_comm )
CALL mp_bcast( atom_pfile, ionode_id, world_comm )
CALL mp_bcast( atom_label, ionode_id, world_comm )
CALL mp_bcast( taspc, ionode_id, world_comm )
CALL mp_bcast( hubbard_u, ionode_id, world_comm )
CALL mp_bcast( hubbard_j0, ionode_id, world_comm )
CALL mp_bcast( hubbard_alpha, ionode_id, world_comm )
CALL mp_bcast( hubbard_beta, ionode_id, world_comm )
CALL mp_bcast( starting_magnetization, ionode_id, world_comm )
CALL mp_bcast( starting_ns_eigenvalue, ionode_id, world_comm )
CALL mp_bcast( angle1, ionode_id, world_comm )
CALL mp_bcast( angle2, ionode_id, world_comm )
CALL mp_bcast( ion_radius, ionode_id, world_comm )
CALL mp_bcast( nhgrp, ionode_id, world_comm )
CALL mp_bcast( fnhscl, ionode_id, world_comm )
CALL mp_bcast( tranp, ionode_id, world_comm )
CALL mp_bcast( amprp, ionode_id, world_comm )
CALL mp_bcast( ntyp, ionode_id, intra_image_comm )
CALL mp_bcast( atom_mass, ionode_id, intra_image_comm )
CALL mp_bcast( atom_pfile, ionode_id, intra_image_comm )
CALL mp_bcast( atom_label, ionode_id, intra_image_comm )
CALL mp_bcast( taspc, ionode_id, intra_image_comm )
CALL mp_bcast( hubbard_u, ionode_id, intra_image_comm )
CALL mp_bcast( hubbard_j0, ionode_id, intra_image_comm )
CALL mp_bcast( hubbard_alpha, ionode_id, intra_image_comm )
CALL mp_bcast( hubbard_beta, ionode_id, intra_image_comm )
CALL mp_bcast( starting_magnetization, ionode_id, intra_image_comm )
CALL mp_bcast( starting_ns_eigenvalue, ionode_id, intra_image_comm )
CALL mp_bcast( angle1, ionode_id, intra_image_comm )
CALL mp_bcast( angle2, ionode_id, intra_image_comm )
CALL mp_bcast( ion_radius, ionode_id, intra_image_comm )
CALL mp_bcast( nhgrp, ionode_id, intra_image_comm )
CALL mp_bcast( fnhscl, ionode_id, intra_image_comm )
CALL mp_bcast( tranp, ionode_id, intra_image_comm )
CALL mp_bcast( amprp, ionode_id, intra_image_comm )
!
CASE ( 'ATOMIC_LIST' )
CALL mp_bcast( atomic_positions, ionode_id, world_comm )
CALL mp_bcast( nat, ionode_id, world_comm )
! CALL mp_bcast( num_of_images, ionode_id, world_comm )
CALL mp_bcast( atomic_positions, ionode_id, intra_image_comm )
CALL mp_bcast( nat, ionode_id, intra_image_comm )
! CALL mp_bcast( num_of_images, ionode_id, intra_image_comm )
! ... ionode has already done it inside card_xml_atomic_list
IF (.not.ionode) THEN
CALL allocate_input_ions( ntyp, nat )
END IF
! CALL mp_bcast( pos, ionode_id )
CALL mp_bcast( if_pos, ionode_id, world_comm )
CALL mp_bcast( na_inp, ionode_id, world_comm )
CALL mp_bcast( sp_pos, ionode_id, world_comm )
CALL mp_bcast( rd_pos, ionode_id, world_comm )
CALL mp_bcast( sp_vel, ionode_id, world_comm )
CALL mp_bcast( rd_vel, ionode_id, world_comm )
CALL mp_bcast( tapos, ionode_id, world_comm )
CALL mp_bcast( if_pos, ionode_id, intra_image_comm )
CALL mp_bcast( na_inp, ionode_id, intra_image_comm )
CALL mp_bcast( sp_pos, ionode_id, intra_image_comm )
CALL mp_bcast( rd_pos, ionode_id, intra_image_comm )
CALL mp_bcast( sp_vel, ionode_id, intra_image_comm )
CALL mp_bcast( rd_vel, ionode_id, intra_image_comm )
CALL mp_bcast( tapos, ionode_id, intra_image_comm )
!
CASE ( 'CONSTRAINTS' )
CALL mp_bcast( nconstr_inp, ionode_id, world_comm )
CALL mp_bcast( constr_tol_inp, ionode_id, world_comm )
CALL mp_bcast( nconstr_inp, ionode_id, intra_image_comm )
CALL mp_bcast( constr_tol_inp, ionode_id, intra_image_comm )
IF ( .not.ionode ) CALL allocate_input_constr()
CALL mp_bcast( constr_type_inp, ionode_id, world_comm )
CALL mp_bcast( constr_target_inp, ionode_id, world_comm )
CALL mp_bcast( constr_target_set, ionode_id, world_comm )
CALL mp_bcast( constr_inp, ionode_id, world_comm )
CALL mp_bcast( constr_type_inp, ionode_id, intra_image_comm )
CALL mp_bcast( constr_target_inp, ionode_id, intra_image_comm )
CALL mp_bcast( constr_target_set, ionode_id, intra_image_comm )
CALL mp_bcast( constr_inp, ionode_id, intra_image_comm )
!
CASE ( 'K_POINTS' )
CALL mp_bcast( k_points, ionode_id, world_comm )
CALL mp_bcast( nkstot, ionode_id, world_comm )
CALL mp_bcast( nk1, ionode_id, world_comm )
CALL mp_bcast( nk2, ionode_id, world_comm )
CALL mp_bcast( nk3, ionode_id, world_comm )
CALL mp_bcast( k1, ionode_id, world_comm )
CALL mp_bcast( k2, ionode_id, world_comm )
CALL mp_bcast( k3, ionode_id, world_comm )
CALL mp_bcast( k_points, ionode_id, intra_image_comm )
CALL mp_bcast( nkstot, ionode_id, intra_image_comm )
CALL mp_bcast( nk1, ionode_id, intra_image_comm )
CALL mp_bcast( nk2, ionode_id, intra_image_comm )
CALL mp_bcast( nk3, ionode_id, intra_image_comm )
CALL mp_bcast( k1, ionode_id, intra_image_comm )
CALL mp_bcast( k2, ionode_id, intra_image_comm )
CALL mp_bcast( k3, ionode_id, intra_image_comm )
IF ( .not.ionode ) ALLOCATE( xk(3,MAX(1,nkstot)), wk(MAX(1,nkstot)) )
CALL mp_bcast( xk, ionode_id, world_comm )
CALL mp_bcast( wk, ionode_id, world_comm )
CALL mp_bcast( xk, ionode_id, intra_image_comm )
CALL mp_bcast( wk, ionode_id, intra_image_comm )
!
CASE ( 'OCCUPATIONS' )
IF ( .not.ionode ) THEN
......@@ -252,10 +252,10 @@ CONTAINS
if ( nspin == 4 ) nspin0 = 1
ALLOCATE( f_inp (nbnd, nspin0 ) )
END IF
CALL mp_bcast( f_inp, ionode_id, world_comm )
CALL mp_bcast( f_inp, ionode_id, intra_image_comm )
!
CASE ( 'PLOT_WANNIER' )
CALL mp_bcast( wannier_index, ionode_id, world_comm )
CALL mp_bcast( wannier_index, ionode_id, intra_image_comm )
!
CASE DEFAULT
CALL errore ( 'card_bcast', 'You want to broadcast a card that does &
......
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