Dave,
I've done collection of all forces using this:
call mpi_allreduce(f, forcetmp, 3*natom, &
MPI_DOUBLE_PRECISION,mpi_sum,commsander,ierr)
it seems to work ok, have you tried it?
why did you use 35 in your allreduce?
Carlos
----- Original Message -----
From: "Dave S Walker" <dswalker.darkwing.uoregon.edu>
To: <amber.scripps.edu>
Sent: Tuesday, March 30, 2004 8:51 PM
Subject: Re: AMBER: recovering total force array
> Hello all,
> Sorry for the vague description of my problem (see below). A few
> weeks ago I realized that the values for the force array are distributed
> between nodes before they're written over by coordinates in runmd.f. In
> my attempt to recover all of these values from the nodes I found myself
> stumbling into fdist() in parallel.f, and it was in my poor attempts to
> call on fdist() directly that caused all my problems.
> Looking closer at fdist() after getting David's response I
> realized that calling on mpi_allreduce() directly would recover all the
> values. I declared a "scratch space" variable named 'ftmp' and attempted
> to call on mpi_allreduce() from runmd.f:
>
> call mpi_allreduce(F,ftmp,35,MPI_DOUBLE_PRECISION,MPI_SUM,
> + MPI_COMM_WORLD,ierr)
>
> Sander compiles fine this way but the total force array still isn't
> recovered. I hope I have described my actions clearer; any input into how
> I can resolve this matter would be greatly appreciated. Thanks again for
> your time.
>
> dsw
>
> On Fri, 12 Mar 2004, David A. Case wrote:
>
> > On Thu, Mar 11, 2004, Dave S Walker wrote:
> >
> > > I've been trying (with no success) to figure out how to output the
> > > total force array from runmd.f when running sander parallel. It looks
> > > like fdist() in parallel.f would do the trick, but I haven't been able
to
> > > access it without sander freezing on me when I run it (compiles fine).
Is
> > > there a simple way to resolve this problem?
> >
> > I don't think the mailing list is going to be of much help here, given
the
> > limited amount of information you provide. It sounds like you modified
> > the code somehow(?), and then it freezes. This is not much to go on.
> >
> > To output forces to a disk file, you will probably need an mpi_allreduce
> > inside fdist() to make sure that all the forces get to the master
processor,
> > so that they can be written out. If you have already done that, and it
> > doesn't work, you can hone and exercise your debugging skills :-)
> >
> > ...dac
> >
> > --
> >
> > ==================================================================
> > David A. Case | e-mail: case.scripps.edu
> > Dept. of Molecular Biology, TPC15 | fax: +1-858-784-8896
> > The Scripps Research Institute | phone: +1-858-784-9768
> > 10550 N. Torrey Pines Rd. | home page:
> > La Jolla CA 92037 USA | http://www.scripps.edu/case
> > ==================================================================
> > -----------------------------------------------------------------------
> > The AMBER Mail Reflector
> > To post, send mail to amber.scripps.edu
> > To unsubscribe, send "unsubscribe amber" to majordomo.scripps.edu
> >
> -----------------------------------------------------------------------
> The AMBER Mail Reflector
> To post, send mail to amber.scripps.edu
> To unsubscribe, send "unsubscribe amber" to majordomo.scripps.edu
>
-----------------------------------------------------------------------
The AMBER Mail Reflector
To post, send mail to amber.scripps.edu
To unsubscribe, send "unsubscribe amber" to majordomo.scripps.edu
Received on Wed Mar 31 2004 - 03:53:00 PST