Correct. Another twist would be to ask user to provide a
script that takes number of threads and command name and
does whatever is necessary to run the command using given
number of threads. OTOH, Power is the only exemption I am
aware of (and, at least in our case, I have serious doubts
that many users could get to the testing point anyway).
On Thu, February 18, 2010 16:13, Ross Walker wrote:
> Hi All,
>
> Just to throw a spanner in the works here, you cannot assume that the
> number
> of threads can be specified on the mpirun / mpiexec command line. Often it
> is an environment variable or a setting set by the queuing system that the
> user cannot override. For example IBM Power systems use :
>
> poe $AMBERHOME/exe/sander.MPI
>
> That is it. The arguments to poe are set within the loadleveller job
> submission script.
>
> Just something to be aware of and largely why what is proposed here was
> never implemented previously.
>
> All the best
> Ross
>
>> -----Original Message-----
>> From: amber-developers-bounces.ambermd.org [mailto:amber-developers-
>> bounces.ambermd.org] On Behalf Of Jason Swails
>> Sent: Thursday, February 18, 2010 1:00 PM
>> To: AMBER Developers Mailing List
>> Subject: Re: [AMBER-Developers] incompatible processor requirements in
>> parallel tests
>>
>> On Thu, Feb 18, 2010 at 3:39 PM, Volodymyr Babin <vbabin.ncsu.edu>
>> wrote:
>> > On Thu, February 18, 2010 15:17, Jason Swails wrote:
>> >> On Thu, Feb 18, 2010 at 3:07 PM, Volodymyr Babin <vbabin.ncsu.edu>
>> wrote:
>> >>>> I checked in the new rules to Makefile. People can feel free to
>> >>>> remove it if they think it's pointless. But I agree with Lachele
>> that
>> >>>> there should probably be some documentation about it (at least
>> some
>> >>>> blurb in the README).
>> >>>
>> >>> The rules are very convenient indeed. Another option (less
>> flexible,
>> >>> but potentially more automatic) would be to set -np inside the
>> Makefile
>> >>>
>> >>> sh$ export DO_PARALLEL='command -np AMBER_NTHREADS'
>> >>
>> >> The problem with this is that not all MPIs use the same flag to
>> >> represent the number of threads. For instance, mpiexec for many
>> MPIs
>> >> uses -n instead. -c is another common option.
>> >
>> > But this is exactly what I was trying to illustrate: it could be
>> > either DO_PARALLEL='mpirun -n AMBER_NTHREADS' or
>> > 'mpiexec -c AMBER_NTHREADS' -- in both cases AMBER_NTHREADS would
>> > be substituted by the actual number later. This is not the "right"
>> > way (there is probably more than one anyway) -- just another
>> possibility.
>> >
>>
>> Ah, I see. I'd be interested to see how this would be implemented.
>> Probably setting AMBER_NTHREADS in each Run file, and DO_PARALLEL="cmd
>> -arg $AMBER_NTHREADS"? I think this is a good idea, especially if
>> results change slightly using different numbers of processors (which
>> I've seen a little doing tests with different numbers of processors).
>>
>> All the best,
>> Jason
>>
>> > Best,
>> >
>> > Volodymyr
>> >
>> >
>> > _______________________________________________
>> > AMBER-Developers mailing list
>> > AMBER-Developers.ambermd.org
>> > http://lists.ambermd.org/mailman/listinfo/amber-developers
>> >
>>
>>
>>
>> --
>> ---------------------------------------
>> Jason M. Swails
>> Quantum Theory Project,
>> University of Florida
>> Ph.D. Graduate Student
>> 352-392-4032
>>
>> _______________________________________________
>> AMBER-Developers mailing list
>> AMBER-Developers.ambermd.org
>> http://lists.ambermd.org/mailman/listinfo/amber-developers
>
>
> _______________________________________________
> AMBER-Developers mailing list
> AMBER-Developers.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber-developers
>
_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers
Received on Thu Feb 18 2010 - 19:30:02 PST