SGE qsub脚本中的共享库错误

时间:2017-12-11 06:00:29

标签: shared-libraries mpi qsub sungridengine

我正在尝试在群集上运行并行作业,但每次执行此操作都会给出错误“加载共享库时出错:liblammps.so:无法打开共享对象文件:没有这样的文件或目录”。我知道我需要导出库路径,也就是“导出LD_LIBRARY_PATH = / path / to / library”,当我在本地执行然后运行程序时,一切都很好。只有当我将作业提交到集群时才会遇到任何问题。我的脚本看起来像这样

#!/bin/bash

LD_LIBRARY_PATH=/path/to/library
for i in 1 2 3
do

    qsub -l h_rt=43200 -l mem=1G -pe single 1 -cwd ./Project-Serial.sh
    qsub -l h_rt=43200 -l mem=1G -pe mpi-spread 2 -cwd ./Project-MPI.sh 2
    qsub -l h_rt=28800 -l mem=1G -pe mpi-spread 4 -cwd ./Project-MPI.sh 4
    qsub -l h_rt=19200 -l mem=1G -pe mpi-spread 8 -cwd ./Project-MPI.sh 8
    qsub -l h_rt=12800 -l mem=1G -pe mpi-spread 16 -cwd ./Project-MPI.sh 16
    qsub -l h_rt=8540 -l mem=1G -pe mpi-spread 32 -cwd ./Project-MPI.sh 32

done

我不确定我是否只是将路径设置在错误的位置?或者也许还有其他方法可以使用该库?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

您可以使用Linux kubernetes-minion-group-7j5x 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2+deb8u5 (2017-09-19) x86_64 GNU/Linux 传递特定的环境变量,或qsub -v Variable_List传递完整的环境。从那里,如果子任务依赖于库文件(qsub -V用于mpiexec -x),则可能需要使用-env