Loading shared library in open-mpi/ mpi-run
Pregunta
I'm trying to run my program using torque scheduler using mpi run. Though in my pbs file I load all the library by
export LD_LIBRARY_PATH=/path/to/library
yet it gives error i.e.
error while loading shared libraries: libarmadillo.so.3:
cannot open shared object file: No such file or directory.
I guess error lies in variable LD_LIBRARY_PATH not set in all the nodes. How would I make it work?
Solución
LD_LIBRARY_PATH
is not exported automatically to MPI processes, spawned by mpirun
. You should use
mpirun -x LD_LIBRARY_PATH ...
to push the value of LD_LIBRARY_PATH
. Also make sure that the specified path exists on all nodes in the cluster and that libarmadillo.so.3
is available everywhere.
Otros consejos
On some systems, your environment isn't always propagated via mpirun
. You should set all those variables in your .bashrc
file.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow