Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] Run-time problem
From: justin oppenheim (jl09981_at_[hidden])
Date: 2009-03-09 14:53:35


Yes. As I indicated earlier, I did use these options to compile my program

MPI_CXX=/programs/openmpi/bin/mpicxx
MPI_CC=/programs/openmpi/bin/mpicc
MPI_INCLUDE=/programs/openmpi/include/
MPI_LIB=mpi /programs/openmpi/
MPI_LIBDIR=/programs/openmpi/lib/ MPI_LINKERFORPROGRAMS=/programs/openmpi/bin/mpicxx

where /programs/openmpi/ is the chosen location for installing the openmpi package (specifically, openmpi-1.3.tar.gz)  that I downloaded from  www.open-mpi.org.

Any clue? Again, my system is Suse 10.3 64-bit, which should be pretty standard. Would another package openmpi-1.3-1.src.rpm work better for my system?

Thanks,

JO

 

--- On Mon, 3/9/09, Ralph Castain <rhc_at_[hidden]> wrote:
From: Ralph Castain <rhc_at_[hidden]>
Subject: Re: [OMPI users] Run-time problem
To: jl09981_at_[hidden]
Cc: users_at_[hidden]
Date: Monday, March 9, 2009, 7:59 AM

Did you try compiling your program with the provided mpicc (or mpiCC, mpif90, etc. - as appropriate) wrapper compiler? The wrapper compilers contain all the required library definitions to make the application work.
Compiling without the wrapper compilers is a very bad idea...
Ralph

On Mar 6, 2009, at 11:02 AM, justin oppenheim wrote:
Please let me go over it again, and maybe it helps clarifying things a bit better. All the OS involved are Suse 10.3.

I have a place for the the installed programs, say /programs.

In /programs I have installed openmpi and my mpi program, say my_mpi_program.  When I am in the working directory, my LD_LIBRARY_PATH does include both

/programs/my_mpi_program/lib
/programs/openmpi/lib

And my PATH includes
/programs/my_mpi_program/bin
/programs/openmpi/bin

So, then I do

mpirun -machinefile machinefile  -np 20 my_mpi_program <arguments>

and I get

/programs/my_mpi_program: symbol lookup error: /programs/openmpi/lib/libmpi_cxx.so.0: undefined symbol: ompi_registered_datareps

When I configured openmpi, I did

./configure --prefix=/programs/openmpi
 
and then compiled it. Subsequently, I compiled my_mpi_program with the options:

MPI_CXX=/programs/openmpi/bin/mpicxx
MPI_CC=/programs/openmpi/bin/mpicc
MPI_INCLUDE=/programs/openmpi/include/
MPI_LIB=mpi
MPI_LIBDIR=/programs/openmpi/lib/ MPI_LINKERFORPROGRAMS=/programs/openmpi/bin/mpicxx

Any clue? The directory /programs is NSF mounted on the nodes.

Many thanks again,

JO

--- On Thu, 3/5/09, justin oppenheim <jl09981_at_[hidden]> wrote:
From: justin oppenheim <jl09981_at_[hidden]>
Subject: Re: [OMPI users] Run-time problem
To: "Ralph Castain" <rhc_at_[hidden]>
Date: Thursday, March 5, 2009, 5:28 PM

Hi Ralph:

Sorry for my ignorance, but in you option 2: what command should I add the option
--prefix=path-to-install? when I configure openmpi? I already did that when I configured  and compiled openmpi. Also, in response to your option 1, I did add the paths to libraries of openmpi in the LD_LIBRARY_PATH  in the .cshrc of the nodes.

Thank you,
JO

--- On Thu, 3/5/09, Ralph Castain <rhc_at_[hidden]> wrote:
From: Ralph Castain <rhc_at_[hidden]>
Subject: Re: [OMPI users] Run-time problem
To: jl09981_at_[hidden]
Cc: "Open MPI Users <users_at_[hidden]>" <users_at_[hidden]>
Date: Thursday, March 5, 2009, 12:46 PM

First, you can add --launch-agent rsh to the command line and that will have OMPI use rsh.
It sounds like your remote nodes may not be seeing your OMPI install directory. Several ways you can resolve that - here are a couple:
1. add the install directory to your LD_LIBRARY_PATH in your .cshrc (or whatever shell rc you are using) - be sure this is being executed on the remote nodes
2. add --prefix=path-to-install on your cmd line - this will direct your remote procs to the proper libraries
Ralph

On Mar 5, 2009, at 10:18 AM, justin oppenheim wrote:
Maybe I should also add that the program
my_mpi_executable is locally installed under the same root directory as that under which  openmpi-1.3 is installed. This root directory is NSF mounted on the working nodes.

Thanks,
JO

--- On Thu, 3/5/09, justin oppenheim <jl09981_at_[hidden]> wrote:
From: justin oppenheim <jl09981_at_[hidden]>
Subject: Re: [OMPI users] Run-time problem
To: "Ralph Castain" <rhc_at_[hidden]>
Date: Thursday, March 5, 2009, 12:04 PM

Hi Ralph:

Thanks for your prompt response. I am using openmpi-1.3, Suse 10.3. I installed openmpi-1.3 with the option

./configure --prefix=/where/to/install

and then just

make all install

I thought the default connection mode is rsh, but I had to invoke ssh-agent, in order not have to enter password one by one. How to change to rsh?

Thanks,
JO

--- On Thu, 3/5/09, Ralph Castain <rhc_at_[hidden]> wrote:
From: Ralph Castain <rhc_at_[hidden]>
Subject: Re: [OMPI users] Run-time problem
To: jl09981_at_[hidden], "Open MPI Users" <users_at_[hidden]>
Date: Thursday, March 5, 2009, 11:40 AM

Could you tell us what version of Open MPI you are using, a little about your system (I would assume you are using ssh?), and how this was configured?
ThanksRalph

On Mar 5, 2009, at 9:31 AM, justin oppenheim wrote:
Hi:

When I execute something like

mpirun -machinefile machinefile my_mpi_executable

I get something like this

my_mpi_executable symbol lookup error: remote_openmpi/lib/libmpi_cxx.so.0: undefined symbol: ompi_registered_datareps

where both my_mpi_executable and remote_openmpi are installed on NSF mounted locations.

Any clue?

thanks

JO
       _______________________________________________
users mailing list
users_at_[hidden]
http://www.open-mpi.org/mailman/listinfo.cgi/users