I'm trying to use the Rmpi package (with or without the SNOW wrapper) but it
seems that all the slaves processes are spawn only on the master machine.
Here are the steps I'm following

1)bring a cluster up using LAM/MPI on 2 x86 64bit machines running Ubuntu:

*fabriz@ip-10-194-211-95:~/cluster$ cat hostfile
#boot schema
10.194.211.95  cpu=2
10.212.102.143 cpu=2
fabriz@ip-10-194-211-95:~/cluster$ lamboot -v hostfile

LAM 7.1.2/MPI 2 C++/ROMIO - Indiana University

n-1<4469> ssi:boot:base:linear: booting n0 (10.194.211.95)
n-1<4469> ssi:boot:base:linear: booting n1 (10.212.102.143)
n-1<4469> ssi:boot:base:linear: finished*
The cluster seems to work fine, for example I tested it with this simple
command:
*fabriz@ip-10-194-211-95:~/cluster$ mpirun -np 4 --hostfile hostfile
hostname
ip-10-194-211-95
ip-10-194-211-95
ip-10-212-102-143
ip-10-212-102-143



*2)  I start R in interactive mode on the Master:
> library(Rmpi)
> lamhosts()
 ip-10-194-211-95  ip-10-194-211-95 ip-10-212-102-143 ip-10-212-102-143
                0                 1                 2                 3

3) At this point is where it seems to break down:
> mpi.spawn.Rslaves (nslaves=4,hosts=c(0,1,2,3))
Error in mpi.spawn.Rslaves(nslaves = 4, hosts = c(0, 1, 2, 3)) :
  hosts number should be within 0 to 0
> mpi.universe.size ()
[1] 1
The only thing that works is:
> mpi.spawn.Rslaves ()
    1 slaves are spawned successfully. 0 failed.
master (rank 0, comm 1) of size 2 is running on: ip-10-194-211-95
slave1 (rank 1, comm 1) of size 2 is running on: ip-10-194-211-95
But in this case the other machine of the cluster is not used at all!

4) of course I get the same problem, i.e. all the slaves are spawn only on
the master machine, also when I try to use the higher level functions like
makeMPIcluster()

Any help is really appreciated!!!!
Thanks, Fabrizio


This is the LAM/MPI boot sequence when run in verbose mode (maybe the
relevant information is that the selected boot module is rsh):
fabriz@ip-10-194-211-95:~/cluster$ lamboot -d hostfile
n-1<4409> ssi:boot:open: opening
n-1<4409> ssi:boot:open: opening boot module globus
n-1<4409> ssi:boot:open: opened boot module globus
n-1<4409> ssi:boot:open: opening boot module rsh
n-1<4409> ssi:boot:open: opened boot module rsh
n-1<4409> ssi:boot:open: opening boot module slurm
n-1<4409> ssi:boot:open: opened boot module slurm
n-1<4409> ssi:boot:select: initializing boot module slurm
n-1<4409> ssi:boot:slurm: not running under SLURM
n-1<4409> ssi:boot:select: boot module not available: slurm
n-1<4409> ssi:boot:select: initializing boot module rsh
n-1<4409> ssi:boot:rsh: module initializing
n-1<4409> ssi:boot:rsh:agent: /usr/bin/rsh
n-1<4409> ssi:boot:rsh:username: <same>
n-1<4409> ssi:boot:rsh:verbose: 1000
n-1<4409> ssi:boot:rsh:algorithm: linear
n-1<4409> ssi:boot:rsh:no_n: 0
n-1<4409> ssi:boot:rsh:no_profile: 0
n-1<4409> ssi:boot:rsh:fast: 0
n-1<4409> ssi:boot:rsh:ignore_stderr: 0
n-1<4409> ssi:boot:rsh:priority: 10
n-1<4409> ssi:boot:select: boot module available: rsh, priority: 10
n-1<4409> ssi:boot:select: initializing boot module globus
n-1<4409> ssi:boot:globus: globus-job-run not found, globus boot will not
run
n-1<4409> ssi:boot:select: boot module not available: globus
n-1<4409> ssi:boot:select: finalizing boot module slurm
n-1<4409> ssi:boot:slurm: finalizing
n-1<4409> ssi:boot:select: closing boot module slurm
n-1<4409> ssi:boot:select: finalizing boot module globus
n-1<4409> ssi:boot:globus: finalizing
n-1<4409> ssi:boot:select: closing boot module globus
n-1<4409> ssi:boot:select: selected boot module rsh

LAM 7.1.2/MPI 2 C++/ROMIO - Indiana University

n-1<4409> ssi:boot:base: looking for boot schema in following directories:
n-1<4409> ssi:boot:base:   <current directory>
n-1<4409> ssi:boot:base:   $TROLLIUSHOME/etc
n-1<4409> ssi:boot:base:   $LAMHOME/etc
n-1<4409> ssi:boot:base:   /usr/lib/lam/etc
n-1<4409> ssi:boot:base: looking for boot schema file:
n-1<4409> ssi:boot:base:   hostfile
n-1<4409> ssi:boot:base: found boot schema: hostfile
n-1<4409> ssi:boot:rsh: found the following hosts:
n-1<4409> ssi:boot:rsh:   n0 10.194.211.95 (cpu=2)
n-1<4409> ssi:boot:rsh:   n1 10.212.102.143 (cpu=2)
n-1<4409> ssi:boot:rsh: resolved hosts:
n-1<4409> ssi:boot:rsh:   n0 10.194.211.95 --> 10.194.211.95 (origin)
n-1<4409> ssi:boot:rsh:   n1 10.212.102.143 --> 10.212.102.143
n-1<4409> ssi:boot:rsh: starting RTE procs
n-1<4409> ssi:boot:base:linear: starting
n-1<4409> ssi:boot:base:server: opening server TCP socket
n-1<4409> ssi:boot:base:server: opened port 38049
n-1<4409> ssi:boot:base:linear: booting n0 (10.194.211.95)
n-1<4409> ssi:boot:rsh: starting lamd on (10.194.211.95)
n-1<4409> ssi:boot:rsh: starting on n0 (10.194.211.95): hboot -t -c
lam-conf.lamd -d -I -H 10.194.211.95 -P 38049 -n 0 -o 0
n-1<4409> ssi:boot:rsh: launching locally
hboot: performing tkill
hboot: tkill -d
tkill: setting prefix to (null)
tkill: setting suffix to (null)
tkill: got killname back: /tmp/lam-fabriz@ip-10-194-211-95/lam-killfile
tkill: f_kill = "/tmp/lam-fabriz@ip-10-194-211-95/lam-killfile"
tkill: killing LAM...
tkill: killing PID (SIGHUP) 4404 ...
tkill: killed
tkill: removing socket file ...
tkill: socket file: /tmp/lam-fabriz@ip-10-194-211-95/lam-kernel-socketd
tkill: removing IO daemon socket file ...
tkill: IO daemon socket file: /tmp/lam-fabriz@ip-10-194-211-95/lam-io-socket
tkill: all finished
hboot: booting...
hboot: fork /usr/bin/lamd
[1]   4412 lamd -H 10.194.211.95 -P 38049 -n 0 -o 0 -d
hboot: attempting to execute
n-1<4409> ssi:boot:rsh: successfully launched on n0 (10.194.211.95)
n-1<4409> ssi:boot:base:server: expecting connection from finite list
n-1<4412> ssi:boot:open: opening
n-1<4412> ssi:boot:open: opening boot module globus
n-1<4412> ssi:boot:open: opened boot module globus
n-1<4412> ssi:boot:open: opening boot module rsh
n-1<4412> ssi:boot:open: opened boot module rsh
n-1<4412> ssi:boot:open: opening boot module slurm
n-1<4412> ssi:boot:open: opened boot module slurm
n-1<4412> ssi:boot:select: initializing boot module slurm
n-1<4412> ssi:boot:slurm: not running under SLURM
n-1<4412> ssi:boot:select: boot module not available: slurm
n-1<4412> ssi:boot:select: initializing boot module rsh
n-1<4412> ssi:boot:rsh: module initializing
n-1<4412> ssi:boot:rsh:agent: /usr/bin/rsh
n-1<4412> ssi:boot:rsh:username: <same>
n-1<4412> ssi:boot:rsh:verbose: 1000
n-1<4412> ssi:boot:rsh:algorithm: linear
n-1<4412> ssi:boot:rsh:no_n: 0
n-1<4412> ssi:boot:rsh:no_profile: 0
n-1<4412> ssi:boot:rsh:fast: 0
n-1<4412> ssi:boot:rsh:ignore_stderr: 0
n-1<4412> ssi:boot:rsh:priority: 10
n-1<4412> ssi:boot:select: boot module available: rsh, priority: 10
n-1<4412> ssi:boot:select: initializing boot module globus
n-1<4412> ssi:boot:globus: globus-job-run not found, globus boot will not
run
n-1<4412> ssi:boot:select: boot module not available: globus
n-1<4412> ssi:boot:select: finalizing boot module slurm
n-1<4412> ssi:boot:slurm: finalizing
n-1<4412> ssi:boot:select: closing boot module slurm
n-1<4412> ssi:boot:select: finalizing boot module globus
n-1<4412> ssi:boot:globus: finalizing
n-1<4412> ssi:boot:select: closing boot module globus
n-1<4412> ssi:boot:select: selected boot module rsh
n-1<4412> ssi:boot:send_lamd: getting node ID from command line
n-1<4412> ssi:boot:send_lamd: getting agent haddr from command line
n-1<4412> ssi:boot:send_lamd: getting agent port from command line
n-1<4412> ssi:boot:send_lamd: getting node ID from command line
n-1<4412> ssi:boot:send_lamd: connecting to 10.194.211.95:38049, node id 0
n-1<4409> ssi:boot:base:server: got connection from 10.194.211.95
n-1<4409> ssi:boot:base:server: this connection is expected (n0)
n-1<4412> ssi:boot:send_lamd: sending dli_port 47776
n-1<4409> ssi:boot:base:server: remote lamd is at 10.194.211.95:47776
n-1<4409> ssi:boot:base:linear: booting n1 (10.212.102.143)
n-1<4409> ssi:boot:rsh: starting lamd on (10.212.102.143)
n-1<4409> ssi:boot:rsh: starting on n1 (10.212.102.143): hboot -t -c
lam-conf.lamd -d -s -I "-H 10.194.211.95 -P 38049 -n 1 -o 0"
n-1<4409> ssi:boot:rsh: launching remotely
n-1<4409> ssi:boot:rsh: attempting to execute: /usr/bin/rsh 10.212.102.143
-n 'echo $SHELL'
n-1<4409> ssi:boot:rsh: remote shell /bin/bash
n-1<4409> ssi:boot:rsh: attempting to execute: /usr/bin/rsh 10.212.102.143
-n hboot -t -c lam-conf.lamd -d -s -I '"-H 10.194.211.95 -P 38049 -n 1 -o
0"'
tkill: setting prefix to (null)
tkill: setting suffix to (null)
tkill: got killname back: /tmp/lam-fabriz@ip-10-212-102-143/lam-killfile
tkill: f_kill = "/tmp/lam-fabriz@ip-10-212-102-143/lam-killfile"
tkill: nothing to kill: "/tmp/lam-fabriz@ip-10-212-102-143/lam-killfile"
hboot: performing tkill
hboot: tkill -d
hboot: booting...
hboot: fork /usr/bin/lamd
[1]  12755 lamd -H 10.194.211.95 -P 38049 -n 1 -o 0 -d
n-1<4409> ssi:boot:rsh: successfully launched on n1 (10.212.102.143)
n-1<4409> ssi:boot:base:server: expecting connection from finite list
n-1<4409> ssi:boot:base:server: got connection from 10.212.102.143
n-1<4409> ssi:boot:base:server: this connection is expected (n1)
n-1<4409> ssi:boot:base:server: remote lamd is at 10.212.102.143:52885
n-1<4409> ssi:boot:base:server: closing server socket
n-1<4409> ssi:boot:base:server: connecting to lamd at 10.194.211.95:45933
n-1<4409> ssi:boot:base:server: connected
n-1<4409> ssi:boot:base:server: sending number of links (2)
n-1<4409> ssi:boot:base:server: sending info: n0 (10.194.211.95)
n-1<4409> ssi:boot:base:server: sending info: n1 (10.212.102.143)
n-1<4409> ssi:boot:base:server: finished sending
n-1<4409> ssi:boot:base:server: disconnected from 10.194.211.95:45933
n-1<4409> ssi:boot:base:server: connecting to lamd at 10.212.102.143:44035
n-1<4412> ssi:boot:rsh: finalizing
n-1<4412> ssi:boot: Closing
n-1<4409> ssi:boot:base:server: connected
n-1<4409> ssi:boot:base:server: sending number of links (2)
n-1<4409> ssi:boot:base:server: sending info: n0 (10.194.211.95)
n-1<4409> ssi:boot:base:server: sending info: n1 (10.212.102.143)
n-1<4409> ssi:boot:base:server: finished sending
n-1<4409> ssi:boot:base:server: disconnected from 10.212.102.143:44035
n-1<4409> ssi:boot:base:linear: finished
n-1<4409> ssi:boot:rsh: all RTE procs started
n-1<4409> ssi:boot:rsh: finalizing
n-1<4409> ssi:boot: Closing



-- 
Fabrizio

	[[alternative HTML version deleted]]

