Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
等待作业完成的有效方法:python和drmaa_Python_Sungridengine_Drmaa - Fatal编程技术网

等待作业完成的有效方法:python和drmaa

等待作业完成的有效方法:python和drmaa,python,sungridengine,drmaa,Python,Sungridengine,Drmaa,我想问一下我通过Python使用的drmaa API中的“wait”特性。它是否执行常量qstat(如果我们在SGE上运行它)来检查程序是否已完成执行 我们的管理员希望我们避免任何常量qstat,因为它会由于调度器上的额外负载而降低性能 一般来说,wat是一种通过DRMAA检查作业状态的有效方法,而不会使调度器负担过重 谢谢! -Abhi从DRMAA API的角度来看,没有更好的方法。API只是反映了您可以使用默认命令行工具在shell脚本中执行的操作 问题在于您特定的DRMAA库的实现策略,因

我想问一下我通过Python使用的drmaa API中的“wait”特性。它是否执行常量qstat(如果我们在SGE上运行它)来检查程序是否已完成执行

我们的管理员希望我们避免任何常量qstat,因为它会由于调度器上的额外负载而降低性能

一般来说,wat是一种通过DRMAA检查作业状态的有效方法,而不会使调度器负担过重

谢谢!
-Abhi

从DRMAA API的角度来看,没有更好的方法。API只是反映了您可以使用默认命令行工具在shell脚本中执行的操作

问题在于您特定的DRMAA库的实现策略,因为SGE提供了比持续轮询更好的方法来获取作业状态更新。因此,您有以下选项:

  • 修复您用来依赖与调度程序直接通信的DRMAA实现。wire协议的一个信息源可能是开放网格调度程序项目
  • 等待Univa(或其他公司)为其网格引擎产品交付DRMAAv2实现。此版本的API支持作业状态更改时的库回调(http://ogf.org/documents/GFD.198.pdf),这似乎正是你想要的

您可以在循环中检查作业状态,并设置一些时间延迟。