Re: [AMBER-Developers] incompatible processor requirements in parallel tests

From: Volodymyr Babin <vbabin.ncsu.edu>
Date: Thu, 18 Feb 2010 22:22:02 -0500 (EST)

On Thu, February 18, 2010 16:29, Jason Swails wrote:
> On Thu, Feb 18, 2010 at 4:13 PM, Ross Walker <ross.rosswalker.co.uk>
> 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 :
>
> I know this to be true for a large number of queuing systems in HPC
> environments. For example, with mpich2/derivatives, you can pass
> mpdboot a machinefile (i think), and mpiexec needs no processor count
> associated with it. In this case, $AMBER_NTHREADS would be unused.
> To this end, the new 4proc, 8proc, and 32proc test rules would still
> serve their purpose.

(1) it is probably not very practical to run tests using queuing systems
    anyway

(2) set of rules for different number of cpus is good enough (at least
    from developer perspective)

(3) I am basically suggested a possibility to put a "tag" (named
    in some unique way; for example AMBER_NTHREADS) everywhere it
    is needed in the DO_PARALLEL
    command, and then replace it with the desired number;
    i.e., instead of export DO_PARALLEL='mpirun -np 4' user would do
    export DO_PARALLEL='mpirun -np AMBER_NTHREADS'; I don't know whether
    it is worth the effort, probably not since this is just slightly
    less typing over (2), which is much less intrusive

> However, if I'm understanding numprocs.awk correctly (I don't know awk
> that well, but I'm familiar with some C-type syntax, and it looks like
> a very simple script), it will grab the number of processors from the
> argument following -np or -n (perhaps -c should be tossed in there as
> well), so wouldn't this, also, be useless in the situations described
> above?

Yes. tests/ncsu/common.sh additionally checks environment variable
MPICH_NP (the way I am using to start mpi jobs locally).

Best,

Volodymyr

_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers
Received on Thu Feb 18 2010 - 19:30:03 PST
Custom Search