Hi Dirk, Thank for pointing out additional flags needed in order to compile Rmpi correctly. Those flags can be added in configure.ac once openmpi dir is detected. BTW -DMPI2 flag was missed in your Rmpi since the detection of openmpi was not good. It should be #### if test -d ${MPI_ROOT}/lib/openmpi; then echo "Found openmpi dir in ${MPI_ROOT}/lib" MPI_DEPS="-DMPI2" fi ####
I tried to run Rmpi under snow and got the same error messenger. But after checking makeMPIcluster, I found that n=3 was a wrong argument. After makeMPIcluster finds that count is missing, count=mpi.comm.size(0)-1 is used. If you start R alone, this will return count=0 since there is only one member (master). I do not know why snow did not use count=mpi.universe.size()-1 to find total nodes available. Anyway after using cl=makeMPIcluster(count=3), I was able to run parApply function. I tried R -> library(Rmpi) -> library(snow) -> c1=makeMPIcluster(3) Also mpirun -host hostfile -np 1 R --no-save library(Rmpi) -> library(snow) -> c1=makeMPIcluster(3) Hao PS: hostfile contains all nodes info so in R mpi.universe.size() returns right number and will spawn to remote nodes. Rmp under Debian 3.1 and openmpi 1.2.4 seems OK. I did find some missing lib under Debian 4.0. Dirk Eddelbuettel wrote: > > Many thanks to Dr Yu for updating Rmpi for R 2.6.0, and for starting to > make > the changes to support Open MPI. > > I have just built the updated Debian package of Rmpi (i.e. r-cran-rmpi) > under > R 2.6.0 but I cannot convince myself yet whether it works or not. Simple > tests work. E.g. on my Debian testing box, with Rmpi installed directly > using Open Mpi 1.2.3-2 (from Debian) and using 'r' from littler: > > [EMAIL PROTECTED]:~> orterun -np 3 r -e 'library(Rmpi); > print(mpi.comm.rank(0))' > [1] 0 > [1] 1 > [1] 2 > [EMAIL PROTECTED]:~> > > but I basically cannot get anything more complicated to work yet. R / > Rmpi > just seem to hang, in particular snow and and getMPIcluster() just sit > there: > >> cl <- makeSOCKcluster(c("localhost", "localhost")) >> stopCluster(cl) >> library(Rmpi) >> cl <- makeMPIcluster(n=3) > Error in makeMPIcluster(n = 3) : no nodes available. >> > > I may be overlooking something simple here, in particular the launching of > apps appears to be different for Open MPI than it was with LAM/MPI (or > maybe > I am just confused because I also look at LLNL's slurm for use with Open > MPI ?) > > Has anybody gotten Open MPI and Rmpi to work on simple demos? Similarly, > is > anybody using snow with Rmpi and Open MPI yet? > > Also, the Open MPI FAQ is pretty clear on their preference for using mpicc > for compiling/linking to keep control of the compiler and linker options > and > switches. Note that e.g. on my Debian system > > [EMAIL PROTECTED]:~> mpicc --showme:link > -pthread -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl > -lutil -lm -ldl > > whereas Rmpi built with just the default from R CMD: > > gcc-4.2 -std=gnu99 -shared -o Rmpi.so RegQuery.o Rmpi.o conversion.o > internal.o -L/usr/lib -lmpi -lpthread -fPIC -L/usr/lib/R/lib -lR > > Don't we need libopen-rte and libopen-pal as the MPI FAQ suggests? > > Many thanks, Dirk > > -- > Three out of two people have difficulties with fractions. > -- Department of Statistics & Actuarial Sciences Fax Phone#:(519)-661-3813 The University of Western Ontario Office Phone#:(519)-661-3622 London, Ontario N6A 5B7 http://www.stats.uwo.ca/faculty/yu ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel