[R] Rmpi Segmentation fault

Jeff Squyres jsquyres at cisco.com
Sat Feb 7 14:00:12 CET 2009


Doh!  I should have added Paul to the CC of the mail I just sent (I  
don't know if my mail will go through to r-help since I'm not  
subscribed)...

I'll re-send to Paul.

This *appears* to be some deep linker voodoo.  Our other thread  
reveals that this works for 32 bit and not for 64 bit, which is quite  
mystifying...


On Feb 6, 2009, at 3:13 PM, Dirk Eddelbuettel wrote:

>
> Paul,
>
> On 6 February 2009 at 19:37, Paul Benton wrote:
> | Dear all,
> |
> | I have used the Rmpi package many times before however this time the
> | installation doesn't work :(. I've
> | installed it as I always do with openMPI tar.gz file direct from the
> | website. I'm installing on my ubuntu 8.10, R version 2.8.1.
> | Linux 2.6.27-11-generic #1 SMP Thu Jan 29 19:28:32 UTC 2009 x86_64  
> GNU/Linux
> |
> | All i get is:
> | > library(Rmpi)
> | Segmentation fault
> | :~$
> | Which dumps me back into the shell, and doesn't give me much to  
> work with.
> | I've included my install of Rmpi that went fine as far as I could  
> see. Is
> | this a openMPI problem or Rmpi or even an R problem? Any help  
> would be
> | great. Also is there a way beside 'make test' to test my install of
> | openMPI?
>
> Welcome to hell!
>
> I have been chasing the same issue for well over a week on the same  
> platform
> (by locally rebuilding the Debian Open MPI package on Ubuntu amd64)  
> and am
> really no further.  The seg fault happens 'deep down' in the mca
> initialisation.
>
> I have been in contact with Hao Yu (upstream for Rmpi) and Jeff  
> Squires and
> Brian Barrett from Open MPI (after first reporting it on the ompi list
> myself) who are as puzzled.  It is seems to be an intersection of  
> amd64 and
> ompi and Rmpi -- i386 works fine.
>
> The r-sig-hpc list may be more topical, by the way.
>
> Debugging help would be welcome!
>
> Dirk
>
> |
> | Cheers,
> |
> | Paul
> |
> |
> | ------Rmpi install --------------------------
> |
> | ~$ sudo R CMD INSTALL Rmpi_0.5-6.tar.gz
> | * Installing to library '/usr/local/lib64/R/library'
> | * Installing *source* package 'Rmpi' ...
> | checking for gcc... gcc
> | checking for C compiler default output file name... a.out
> | checking whether the C compiler works... yes
> | checking whether we are cross compiling... no
> | checking for suffix of executables...
> | checking for suffix of object files... o
> | checking whether we are using the GNU C compiler... yes
> | checking whether gcc accepts -g... yes
> | checking for gcc option to accept ISO C89... none needed
> | I am here /usr/local and it is OpenMPI
> | Try to find mpi.h ...
> | Found in /usr/local/include
> | Try to find libmpi.so or libmpich.a
> | Found libmpi in /usr/local/lib
> | checking for openpty in -lutil... yes
> | checking for main in -lpthread... yes
> | configure: creating ./config.status
> | config.status: creating src/Makevars
> | ** libs
> | gcc -std=gnu99 -I/usr/local/lib64/R/include -DPACKAGE_NAME=\"\"
> | -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
> | -DPACKAGE_BUGREPORT=\"\" -I/usr/local/include -DMPI2 -DOPENMPI -fPIC
> | -I/usr/local/include    -fpic  -g -O2 -c conversion.c -o  
> conversion.o
> | gcc -std=gnu99 -I/usr/local/lib64/R/include -DPACKAGE_NAME=\"\"
> | -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
> | -DPACKAGE_BUGREPORT=\"\" -I/usr/local/include -DMPI2 -DOPENMPI -fPIC
> | -I/usr/local/include    -fpic  -g -O2 -c internal.c -o internal.o
> | gcc -std=gnu99 -I/usr/local/lib64/R/include -DPACKAGE_NAME=\"\"
> | -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
> | -DPACKAGE_BUGREPORT=\"\" -I/usr/local/include -DMPI2 -DOPENMPI -fPIC
> | -I/usr/local/include    -fpic  -g -O2 -c RegQuery.c -o RegQuery.o
> | gcc -std=gnu99 -I/usr/local/lib64/R/include -DPACKAGE_NAME=\"\"
> | -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
> | -DPACKAGE_BUGREPORT=\"\" -I/usr/local/include -DMPI2 -DOPENMPI -fPIC
> | -I/usr/local/include    -fpic  -g -O2 -c Rmpi.c -o Rmpi.o
> | gcc -std=gnu99 -shared -L/usr/local/lib64 -o Rmpi.so conversion.o
> | internal.o RegQuery.o Rmpi.o -L/usr/local/lib -lmpi -lutil - 
> lpthread -fPIC
> | ** R
> | ** demo
> | ** inst
> | ** preparing package for lazy loading
> | ** help
> |  >>> Building/Updating help pages for package 'Rmpi'
> |      Formats: text html latex example
> |   hosts                             text    html    latex
> |   internal                          text    html    latex
> |   mpi.abort                         text    html    latex
> |   mpi.apply                         text    html    latex   example
> |   mpi.barrier                       text    html    latex
> |   mpi.bcast                         text    html    latex
> |   mpi.bcast.Robj                    text    html    latex
> |   mpi.bcast.cmd                     text    html    latex
> |   mpi.cart.coords                   text    html    latex   example
> |   mpi.cart.create                   text    html    latex   example
> |   mpi.cart.get                      text    html    latex   example
> |   mpi.cart.rank                     text    html    latex   example
> |   mpi.cart.shift                    text    html    latex   example
> |   mpi.cartdim.get                   text    html    latex   example
> |   mpi.comm                          text    html    latex   example
> |   mpi.comm.disconnect               text    html    latex
> |   mpi.comm.free                     text    html    latex
> |   mpi.comm.inter                    text    html    latex
> |   mpi.comm.set.errhandler           text    html    latex
> |   mpi.comm.spawn                    text    html    latex
> |   mpi.const                         text    html    latex
> |   mpi.dims.create                   text    html    latex   example
> |   mpi.exit                          text    html    latex
> |   mpi.finalize                      text    html    latex
> |   mpi.gather                        text    html    latex   example
> |   mpi.gather.Robj                   text    html    latex   example
> |   mpi.get.count                     text    html    latex
> |   mpi.get.processor.name            text    html    latex
> |   mpi.get.sourcetag                 text    html    latex
> |   mpi.info                          text    html    latex
> |   mpi.init.sprng                    text    html    latex
> |   mpi.intercomm.merge               text    html    latex
> |   mpi.parSim                        text    html    latex
> |   mpi.parapply                      text    html    latex   example
> |   mpi.probe                         text    html    latex
> |   mpi.realloc                       text    html    latex
> |   mpi.reduce                        text    html    latex
> |   mpi.remote.exec                   text    html    latex   example
> |   mpi.scatter                       text    html    latex   example
> |   mpi.scatter.Robj                  text    html    latex   example
> |   mpi.send                          text    html    latex   example
> |   mpi.send.Robj                     text    html    latex
> |   mpi.sendrecv                      text    html    latex   example
> |   mpi.setup.rng                     text    html    latex
> |   mpi.spawn.Rslaves                 text    html    latex   example
> |   mpi.universe.size                 text    html    latex
> |   mpi.wait                          text    html    latex
> | ** building package indices ...
> | * DONE (Rmpi)
> |
> | 	[[alternative HTML version deleted]]
> |
> | ______________________________________________
> | R-help at r-project.org 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.
>
> -- 
> Three out of two people have difficulties with fractions.


-- 
Jeff Squyres
Cisco Systems




More information about the R-help mailing list