過程

2016-05-17 20 views
2

我想用GNU並行此命令GNU並行超時:過程

seq -w 30 | parallel -k -j6 java -javaagent:build/libs/pddl4j-3.1.0.jar -server -Xms8048m -Xmx8048m fr.uga.pddl4j.planners.hsp.HSP -o pddl/benchmarks_STRIPS/benchmarks_STRIPS/ipc1/movie/domain.pddl -f pddl/benchmarks_STRIPS/benchmarks_STRIPS/ipc1/movie/p{}.pddl -i 8 '>>' AstarMovie.txt 

我有600秒的java程序超時,但平行不執行它。流程可以運行2,3,4或更多小時,並且永不停止。

我試圖基於GNU教程此命令在網上,但它不能正常工作或:

seq -w 30 | parallel -k --timeout 600000 -j6 java -javaagent:build/libs/pddl4j-3.1.0.jar -server -Xms2048m -Xmx2048m fr.uga.pddl4j.planners.hsp.HSP -o pddl/benchmarks_STRIPS/benchmarks_STRIPS/ipc1/movie/domain.pddl -f pddl/benchmarks_STRIPS/benchmarks_STRIPS/ipc1/movie/p{}.pddl -i 8 '>>' AstarMovie.txt 

我在GNU並行使用毫秒教程看到 - 所以60萬爲10分鐘,這是我需要,但在12分鐘後,該過程仍在運行。我需要6個進程每次運行最多10分鐘。

任何幫助將是偉大的。謝謝。

編輯: 爲什麼人們覺得有必要編輯'600秒'到'600秒'等小改動的帖子?停止做它的業障..

+1

你是什麼意思「GNU並行不尊重您的超時」的更多信息:你可以在這個片段中,其等待15秒,但與10秒後砍下超時測試嗎?如果您的程序在10分鐘後自動停止,GNU Parallel如何保持運行? –

+3

GNU並行手冊頁說'--timeout'值是以秒爲單位的。 –

+0

在我的Java程序中,我有一個600秒的超時設置來完成任務。當使用GNU並行時,進程將超過這個超時並繼續嘗試解決問題 – Relentless

回答

3

的超時GNU並行是以秒爲單位給出,而不是毫秒。

time parallel --timeout 10 sleep {} ::: 15 

real 0m10.961s 
user 0m0.071s 
sys  0m0.038s