Doesn't that indicate precisely what Prentice said? ssh isn't picking up your remote .bashrc file and executing it.

Try just doing "mpirun -n 1 -H hpcnode1 printenv" and see if you get the envars you expect from you .bashrc. If not, talk to your sysadmin about how to fix the problem - could be a system config issue, permissions on your .bashrc (typical source of this kind of trouble), etc.


On May 10, 2010, at 6:15 AM, Miguel Ángel Vázquez wrote:

Version: OMPI 1.3.3

Shell: bash

I already fixed the problem with a shell script like
#!/bin/sh
export LD_LIBRARY_PATH= ...
./montecarlo

But, it seems that openmpi look neither bash_profile not .bashrc.

Thank you,

Miguel

2010/5/10 Ralph Castain <rhc@open-mpi.org>
What version of OMPI? What shell?

On May 10, 2010, at 2:05 AM, Miguel Ángel Vázquez wrote:

Hello Prentice,

Thank you for your advice but that doesn't solve the problem.

The non-login bash updates properly the $LD_LIBRARY_PATH value.

Any other idea?

Thanks,

Miguel

2010/5/7 Prentice Bisbal <prentice@ias.edu>


Miguel Ángel Vázquez wrote:
> Dear all,
>
> I am trying to run a C++ program which uses dynamic libraries under mpi.
>
> The compilation command looks like:
>
>  mpiCC `pkg-config --cflags itpp`  -o montecarlo  montecarlo.cpp
> `pkg-config --libs itpp`
>
> And it works if I executed it in one machine:
>
> mpirun -np 2 -H localhost montecarlo
>
> I tested this both in the "master node" and in the "compute nodes" and
> it works. However, when I try to run it with two different machines:
>
> mpirun -np 2 -H localhost,hpcnode1 montecarlo
>
> The program claims that it can't find the shared libraries:
>
> montecarlo: error while loading shared libraries: libitpp.so.6: cannot
> open shared object file: No such file or directory
>
> The LD_LIBRARY_PATH is set properly at every machine, any idea where the
> problem is? I attached you the config.log and the result of the omp-info
> --all
>
> Thank you in advance,
>
> Miguel

Miguel,

Shells behave differently depending on whether it is an interactive
login shell or a non-interactive shell. For example, the bash shell uses
.bash_profile in case, but .bashrc in the other. Check the documentation
for your shell and see what files it uses in each case, and make sure
the non-login config file has the necessary settings for your MPI jobs.
 It sounds like your login shell environment is okay, but your non-login
environment isn't setup correctly. This is a common problem.

I use bash, and to keep it simple, my .bash_profile is just a symbolic
link to .bashrc. That way, both shell types have the same environment.
This isn't always a good idea, but in my case it's fine.

--
Prentice
_______________________________________________
users mailing list
users@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users

_______________________________________________
users mailing list
users@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users


_______________________________________________
users mailing list
users@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users

_______________________________________________
users mailing list
users@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users