如何让计算节点知道要执行的Python文件(Slurm)?

时间:2018-12-19 13:25:50

标签: pexpect slurm pxssh

我正在使用pexpect编写一些在slurm集群上运行并行进程的python脚本。

如果我将作业提交到单个计算节点,则一切正常。并行过程由pexpect.spawn实现,如下所示:

worker_command = '%s -m worker' % python + " %i " + server_socket
children = []
for pid in range(no_of_workers):
    child = pexpect.spawn(worker_command % pid)
    children.append(child)

其中worker.py与用于提交作业的bash脚本放在同一文件夹中。

但是,当我使用两个计算节点运行脚本时,其中一个计算节点找不到脚本worker.py。如果我仍然使用相同的worker_command,则命令

ssh = pxssh.pxssh()
ssh.sendline(worker_command % pid)

将不会运行worker.py所在的计算机可以找到的zmq.REP脚本。

我该如何解决?

0 个答案:

没有答案
相关问题