2012-06-07 21 views
0

我想問一下關於drmaa API中的「等待」功能,我通過Python使用。它是否執行常量qstat(如果我們正在SGE上運行它)來檢查程序是否已完成執行。有效等待工作完成的方式:python and drmaa

我們的管理員希望我們避免任何恆定的qstat,因爲它會因調度器的額外負載而降低性能。

在一般情況下,通過DRMAA檢查作業狀態,而不會過度使用調度程序,wat將是一種有效的方法。

謝謝! -Abhi

+0

您可以在一個循環中檢查作業狀態,延遲一段時間。 – World

回答

1

從DRMAA API的角度來看,沒有更好的方法。 API只是簡單地反映了您可以在shell腳本中使用默認的命令行工具執行的操作。

問題就出在你的特殊DRMAA庫的實現策略,因爲上海黃金交易所提供超過一定輪詢更好的方法來獲取作業狀態,因此updates.You有以下幾種選擇:

  • 修復DRMAA實現你用於依賴與調度程序的某些直接通信。有線協議的一個信息來源可能是Open Grid Scheduler項目。
  • 等到Univa(或其他人)爲其Grid Engine產品提供DRMAAv2實施。此版本的API支持對作業狀態更改進行庫回調(http://ogf.org/documents/GFD.198.pdf),這似乎正是您想要的。
+0

感謝您的詳細信息。 -一個 – Abhi