Hi,
I have R 3.0.3 and OpenMPI 1.6.5.
Here’s my test script:
library(snow)
nbNodes <- 4
cl <- makeCluster(nbNodes, "MPI")
clusterCall(cl, function()
Sys.info()[c("nodename","machine")])
mpi.quit()
And the mpirun command:
/opt/openmpi-1.6.5-intel/bin/mpirun -np 1 -H host1,host2,host3,host4 R --no-save
< ~/test_mpi.R
Here’s the output:> cl <- makeCluster(nbNodes, "MPI")
Loading required package: Rmpi
4 slaves are spawned successfully. 0 failed.> clusterCall(cl, function()
Sys.info()[c("nodename","machine")])
[[1]]
nodename machine
“host1" "x86_64"
[[2]]
nodename machine
“host1" "x86_64"
[[3]]
nodename machine
“host1" "x86_64"
[[4]]
nodename machine
“host1" "x86_64"
>
> mpi.quit()
I followed the instructions from:
http://www.statistik.uni-dortmund.de/useR-2008/tutorials/useR2008introhighperfR.pdf
, specifically to use -np 1
1. Why is it not running on the rest of the nodes? I can see all 4 processes on
host1 and no orted daemon running.
What should be the correct way to run this?
2. mpi.quit() just hangs there.
Thanks!