我想在我的python脚本中调用一个mpi程序,mpi程序是路径中的可执行文件“/ scratch2 / yuhengd / plda + /推断”
虽然我可以直接从linux命令行运行“推断”(在命令“/ scratch2 / yuhengd / plda + /推断”之前不使用sh或./),我不能在python脚本中使用子进程来调用它,它不会给出任何错误,也不会执行它。 python代码在这里:
infer_command = "/scratch2/yuhengd/plda+/infer --alpha 0.1 --beta 0.01 --... /scratch2/yuhengd/data/commoncrawl/LDA/local_models/"+forumid+"-commoncrawl-excludeunif-model --total_iterations 500 --burn_in_iterations 250"
print infer_command
exit_status = subprocess.call(infer_command, shell=True)
if exit_status is 1:
print (forumid + " infer failed")
我该怎么做才能使这项工作成功?感谢。
更新:: 我使用以下代码来测试子进程调用:
导入子流程
command = "/scratch2/yuhengd/plda+/infer --alpha 0.1 --beta 0.01 --inference_data_file ... /scratch2/yuhengd/data/commoncrawl/LDA/local_models/e70-commoncrawl-excludeunif-model --total_iterations 500 --burn_in_iterations 250"
exit_status = subprocess.call(command, shell=True)
if exit_status == 1:
print command + "failed"
它没有显示任何错误消息,但也没有执行程序。