我正在尝试使用mpi run使用扭矩调度程序来运行我的程序。虽然在我的pbs文件中我按
加载了所有库export LD_LIBRARY_PATH=/path/to/library
但是它给出了错误,即
error while loading shared libraries: libarmadillo.so.3:
cannot open shared object file: No such file or directory.
我猜错误在于所有节点中都没有设置变量LD_LIBRARY_PATH。我怎么能让它发挥作用?
答案 0 :(得分:16)
LD_LIBRARY_PATH
不会自动导出到由mpirun
生成的MPI流程。你应该使用
mpirun -x LD_LIBRARY_PATH ...
推送LD_LIBRARY_PATH
的值。还要确保指定的路径存在于群集中的所有节点上,libarmadillo.so.3
随处可用。
答案 1 :(得分:3)
在某些系统上,您的环境并不总是通过mpirun
传播。您应该在.bashrc
文件中设置所有这些变量。