[padb] Réf. : Re: Patch of support of Slurm + Openmpi Orte manager
thipadin.seng-long at bull.net
thipadin.seng-long at bull.net
Tue Dec 1 15:30:22 GMT 2009
On Mon, 2009-11-30 at 17:31 <ashley at pittman.co.uk> wrote:
>I knew you had to do this when running OpenMPI with slurm however I'd
>never done it myself. My test cluster has both installed so I should be
>able to try it, do you happen to know if you need and special configure
>options to either to allow this?
I used slurm 2.0.1 and openmpi_1.3.3, uppers versions should work also.
I don't know the special configure except in my $PATH, I have added the
PATH
to where is installed my openMPI_1.3.3 binaries and libs.
Check the path with "type mpirun" command,it should show the PATH to
openmpi.
>Does the mpirun job (i.e. the processes we want) have it's own slurm job
>step or does it share the job step with the allocation?
Just after salloc step is:
[thipa at vb0 openmpi]$ salloc.sh
salloc: Granted job allocation 27828
[thipa at vb0 openmpi]$
[thipa at vb0 openmpi]$ squeue -s
STEPID NAME PARTITION USER TIME NODELIST
[thipa at vb0 openmpi]$ squeue
JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)
27828 jlg bash thipa R 0:25 2 vb[8,10]
After mpirun step is:
[thipa at vb0 openmpi]$ squeue -s
STEPID NAME PARTITION USER TIME NODELIST
27828.0 orted jlg thipa 1:02 vb[8,10]
[thipa at vb0 openmpi]$
I believe it can't share job step, each job step is its own.
>I also notice the /proc/version in the patch, does this mean the patch
>works on an OS other than Linux?
It is not complete, to run on other OS that linux you must have two
branches:
1 - with /proc/version using readdir /proc and /proc/$pid/cmdline
2 - with "ps -edf | grep slurmstepd" something like this.
>What happens if you run salloc... srun? Does this work with the
>existing support and how should users know which resource manager plugin
>to pick (Ideally padb could do the right thing).
You mean salloc ... srun ...mpirun prog ?
That's what I have experimented:
[thipa at vb0 openmpi]$ salloc.sh
salloc: Granted job allocation 27830
[thipa at vb0 openmpi]$
[thipa at vb0 openmpi]$ srun -n1 mpirun -bynode -n 6 ./pp_sndrcv_spbl
srun: Warning: can't run 1 processes on 2 nodes, setting nnodes to 1
I am, process 0 starting on vb8, total by srun 6
Me, process 0, send 1000 to process 2
I am, process 2 starting on vb8, total by srun 6
I am, process 4 starting on vb8, total by srun 6
I am, process 1 starting on vb10, total by srun 6
I am, process 5 starting on vb10, total by srun 6
I am, process 3 starting on vb10, total by srun 6
There are 2 steps:
[thipa at vb0 openmpi]$ squeue -s
STEPID NAME PARTITION USER TIME NODELIST
27830.0 mpirun jlg thipa 0:22 vb8
27830.1 orted jlg thipa 0:22 vb10
[thipa at vb0 openmpi]$
And rmgr=slurm doesn't work (existing support)
You just catch the stack of orted:
[thipa at vb0 openmpi]$ padb_r341 -O stack-shows-locals=no -O
stack-shows-params=no -O rmgr=slurm --verbose -tx 27830
Loading config from "/etc/padb.conf"
Loading config from "/home_nfs/thipa/.padbrc"
Loading config from environment
Loading config from command line
Setting 'rmgr' to 'slurm'
Setting 'stack_shows_locals' to 'no'
Setting 'stack_shows_params' to 'no'
Collecting information for job '27830'
Attaching to job 27830
Job has 1 process(es)
Job spans 2 host(s)
Mode 'stack' mode specific options:
gdb_retry_count : '3'
max_distinct_values : '3'
stack_shows_locals : '0'
stack_shows_params : '0'
stack_strip_above :
'elan_waitWord,elan_pollWord,elan_deviceCheck,opal_condition_wait,opal_progress'
stack_strip_below : 'main,__libc_start_main,start_thread'
strip_above_wait : '1'
strip_below_main : '1'
-----------------
[0] (1 processes)
-----------------
main() at main.c:13
orterun() at orterun.c:686
opal_event_dispatch() at ?:?
opal_event_base_loop() at ?:?
poll_dispatch() at ?:?
poll() at ?:?
??() at ?:?
result from parallel command is 0 (state=shutdown)
[thipa at vb0 openmpi]$
>> [thipa at machu0 padb_open]$ ./padb -O rmgr="sl-orte" -O
>> stack-shows-locals=no -O stack-shows-params=no --debug=verbose=all
>> -tx 8324
>> DEBUG (verbose): 0: There are 1 processes over 3 hosts
>This isn't great, the number of processes expected is so far only used
>to check for missing processes but there are other potential uses for it
>so I'd rather it was correct.
I will dig it more, I don't know the meaning of processes number actually
you do with.
>> I don't use scontrol listpids, because I found this command not a
>> universal method (some version doesn't have it),
>> and may issued error message such as :
>> slurmd[machu139]: proctrack/pgid does not implement
>> slurm_container_get_pids
>I'd prefer to use this if at all possible, this option was added at a
>request my be several years ago so I'd have thought most versions have
>it by now, can you be clearer on the versions where it doesn't work?
It work only for slurm upper from 1.2, may be some clients have it still ?
If you can get rid of messages above (slurmd[hostnn]: proctrack/pgid does
not implement)
I am ok.
Thipadin.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://pittman.org.uk/pipermail/padb-devel_pittman.org.uk/attachments/20091201/a7e57760/attachment.html>
More information about the padb-devel
mailing list