[R] Problem installing Rmpi with lam on SGI SLES9

Martin Morgan mtmorgan at fhcrc.org
Wed Apr 25 18:27:35 CEST 2007


Are you starting the lam daemons before starting R?

% lamboot

You might need to specify a 'hosts' argument to lamboot. The default
way Rmpi calls lamboot is with no arguments, and this might simply
create a single lam daemon.

I don't usually use papply, but glancing at it's code suggests that it
does require(Rmpi) and then decides based on the result of
mpi.comm.size what to do. So to debug, load Rmpi and try
mpi.comm.size. As a work-around, I think it should be possible to

> library(Rmpi)
> mpi.spawn.Rslaves(nslaves=64) # maybe a little bold, initially!

before making your first papply call.

Hope that helps


"Hendrik Fuß" <fuss-h at ulster.ac.uk> writes:

> On 24/04/07, Prof Brian Ripley <ripley at stats.ox.ac.uk> wrote:
>> On Tue, 24 Apr 2007, Hendrik Fuß wrote:
>> > Hi,
>> >
>> > I've been trying here to install Rmpi on an SGI IA-64 machine with 64
>> > processors, running SuSE Linux Enterprise Server 9, R 2.4.0 and
>> > lam-mpi 7.1.3. While I've read of similar problems on this list, I
>> > think I've got an entirely new set of error messages to contribute
>> > (see below). I'm not sure what the actual error is and what the @gprel
>> > relocation message is about. Any help greatly appreciated.
>> I don't know for sure, but on many 64-bit OSes you cannot link code from
>> static libraries into dynamic shared libraries, and that seems to be the
>> case with ia64 Linux.  Almost certainly you need to re-compile LAM with
>> -fPIC flags.
> Yes, thanks a million, this solved the problem.
> While Rmpi now works, there is another issue connected with this one:
> I'm trying to use the papply package. However, when I do:
>> library(papply)
>> papply(list(1:10, 1:15, 1:20), sum)
>         1 slaves are spawned successfully. 0 failed.
> master (rank 0, comm 1) of size 2 is running on: behemoth
> slave1 (rank 1, comm 1) of size 2 is running on: behemoth
> [1] "Running serial version of papply\n"
> Papply only spawns one slave and then decides to run the serial
> version instead. I'm not sure how to tell it to use all the 64
> processors available.
> Hendrik
> -- 
> Hendrik Fuß
> PhD student
> Systems Biology Research Group
> University of Ulster, School of Biomedical Sciences
> Cromore Road, Coleraine, BT52 1SA, Northern Ireland
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

Martin Morgan
Bioconductor / Computational Biology

More information about the R-help mailing list