It hangs because the 'newbalance' (see below) does not get
communicated to other nodes. Does it make sense to add
mpi_allgather here or rather not? The relevant snapshot from
nonbond_list.f is:
else if (balance) then
! --- If this was not a rebalance step, then check
! whether the list has gotten more than a tolerance
! away from the last balance. If so, trigger
! a new balance by setting trial and newbalance
! newbalance will need to be communicated to
! all processors before the next list build.
listdiff=iabs(last_numlist-listtot)
if(listdiff > listdiffmax)then
newbalance=2
end if
end if ! (trial)
Received on Fri Dec 05 2008 - 14:35:50 PST