[GE users] MPICH2 tight integration with SGE

Goncalo Borges goncalo at lip.pt
Fri Apr 7 12:28:32 BST 2006


Hi Reuti,

> > if [ x$just_wrap = x ]; then
> >    echo $SGE_ROOT/bin/$ARC/qrsh -inherit $rhost $cmd
> >    exec $SGE_ROOT/bin/$ARC/qrsh -inherit $rhost $cmd
> > else
> >    echo $me $rhost $*
> >    exec $me $rhost $cmd
> >    echo $me not found in PATH=$PATH
> > fi

rsh would indeed work on the "x$just_wrap = x" case (because I have 
configured qrsh to use ss) but it would not work in the "else" case
since "rsh" would be used directly (and this is completely ruled-out in 
our site).

Goncalo

On Fri, 7 Apr 2006, Reuti wrote:

> Hi Goncalo,
> 
> thx for putting this all together, but I wonder, whether the direct approach
> wasn't working for you. I mean, let the used connection method stay as rsh
> from MPICH2 points of view, only changing http://
> gridengine.sunsource.net/project/gridengine/howto/qrsh_qlogin_ssh.html could
> do already the trick (of course, setup of passwordless login is necessary).
> 
> -- Reuti
> 
> Am 07.04.2006 um 12:51 schrieb Goncalo Borges:
> 
> > 
> > > > 
> > > > Accounting, at least at this point, is not important for us. But it will
> > > > be in a near future. Nevertheless, I'm tending to configure qrsh and
> > > > qlogin
> > > > to use ssh. In this case what is the conclusion regarding MPICH2
> > > > integration? Is it possible to get the MPICH2 tight integration with SGE
> > > > following the previous how-to instructions?
> > > 
> > > Why not just trying it?
> > > 
> > > -- Reuti
> > 
> > Dear All,
> > It seems I have sucessed implementing MPICH2 tight integration
> > with SGE using ssh instead of the rsh (which is the default
> > protocol used in the mpich2 integration how-to:
> > http://gridengine.sunsource.net/project/gridengine/howto/mpich2-
> > integration/mpich2-integration.html).
> > 
> > Until now I only have implemented smpd startup method in its daemonless
> > configuration. There are some pre-requesites one has to guaranty:
> > 
> > 1) Define a ./smpd file in the user home directory in all exec nodes (if
> > there is no shared homes):
> > [user at lflip02 ~]$ cat .smpd
> > phrase=usersecretword
> > 
> > 2) ssh identification based on host keys (no password required).
> > A user should be able to ssh other machines without introducing password,
> > including ssh from the present host to itself.
> > 
> > 3) Configure qrsh and qlogin to use ssh, as explained in
> > http://gridengine.sunsource.net/project/gridengine/howto/
> > qrsh_qlogin_ssh.html
> > 
> > I created a new directory named $SGE_ROOT/mpich2_smpd_ssh and copied all
> > the scripts in $SGE_ROOT/mpich2_smpd_rsh to it. One has to slightly
> > change the scripts which are used:
> > 
> > a) startmpich2.sh script is going to create the machine file in the $TMP
> > directory and put ssh wrapper available in the $TMP directory. Basicaly, I
> > just substituted the "rsh variable names" by "ssh variable names" such as
> > "rsh_wrapper=$SGE_ROOT/mpich2_smpd_rsh/rsh" by "ssh_wrapper=
> > $SGE_ROOT/mpich2_smpd_ssh/ssh"
> > but, if you want, this can remain unchanged.
> > 
> > b) I moved the rsh wrapper and named it ssh. The default rsh wrapper tests
> > some of the options used in rsh command. Since the same options are not used
> > in ssh, one has to take care that the correct parsing is done for ssh.
> > 
> > The important part of this ssh wrapper is:
> > 
> > ***
> > if [ x$just_wrap = x ]; then
> >    echo $SGE_ROOT/bin/$ARC/qrsh -inherit $rhost $cmd
> >    exec $SGE_ROOT/bin/$ARC/qrsh -inherit $rhost $cmd
> > else
> >    echo $me $rhost $*
> >    exec $me $rhost $cmd
> >    echo $me not found in PATH=$PATH
> > fi
> > ***
> > 
> > By default, qrsh will be used since $just_wrap is always an empty
> > variable. One can used ssh directly setting in this ssh wrapper
> > just_wrap=1. The $cmd will pass important mpi environment variables
> > such had PMI_RANK, PMI_SIZE=10, PMI_ROOT_HOST=lflip02.lip.pt (etc...)
> > and executable one would like to run.
> > 
> > In the user script, one had to do:
> > export MPIEXEC_RSH=ssh
> > mpiexec -ssh -nopm -n $NSLOTS -machinefile $TMPDIR/machines $HOME/
> > <executable>
> > 
> > If we do not export MPIEXEC_RSH=ssh, MPICH will use "ssh -x" by default
> > and qrsh will not recognize the option.
> > 
> > c) Finally, as in the startmpich2.sh, I only changed "rsh variable names"
> > by "ssh variable names" in the stopmpich2.sh script.
> > 
> > I hope this information maybe usefull for other persons.
> > Cheers
> > Goncalo
> > 
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
> > For additional commands, e-mail: users-help at gridengine.sunsource.net
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
> For additional commands, e-mail: users-help at gridengine.sunsource.net
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
For additional commands, e-mail: users-help at gridengine.sunsource.net




More information about the gridengine-users mailing list