2016-06-12 26 views
2

該文檔是有點不清楚的正是-t選項使用qsub瞭解-t選項的qsub

http://docs.adaptivecomputing.com/torque/4-0-2/Content/topics/commands/qsub.htm

從文檔的作業提交做:

- t指定作業數組的任務ID。單任務數組是允許的。 array_request參數是一個整數id或一個整數範圍。 可以在逗號分隔列表中組合多個ID或ID範圍。 例子:-t 1-100或-t 1,10,50-100

這裏,我已經要求2個節點,每節點8個進程,以及16個作業陣列的例子出問題。我所希望的將會在2個節點間自然分配,但是16個任務分佈在2個以上的節點上。

$ echo 'hostname' | qsub -q gpu -l nodes=2:ppn=8 -t 1-16 
52727[] 
$ cat STDIN.o52727-* | sort 
gpu-3.local 
gpu-3.local 
gpu-3.local 
gpu-3.local 
gpu-5.local 
gpu-5.local 
gpu-5.local 
gpu-5.local 
gpu-5.local 
gpu-5.local 
gpu-7.local 
gpu-7.local 
gpu-7.local 
gpu-7.local 
gpu-7.local 
gpu-7.local 
+0

你使用什麼調度程序? – clusterdude

回答

1

我懷疑這不會完全回答你的問題,但你希望完成什麼目前仍不清楚。

指定與qsub -t的數組只是創建單個作業,全部使用相同的主ID。提交您指定的方式將創建16個作業,每個作業請求16個核心。這個語法只是簡單的一次提交大量的工作,而不必編寫提交循環。

單獨扭矩(即不考慮調度),可以說這樣的強制作業的特定節點:

的qsub -l節點= GPU-NODE01:PPN = 8 + GPU-NODE02:PPN = 8

更高級的調度程序可以給你更大的靈活性(例如,Moab或Maui允許「-l nodes = 2:ppn = 8,nallocpolicy = exactnode」,在調度時將NODEALLOCATIONPOLICY EXACTNODE應用於作業,你在正好兩個節點上有8個核心(在這種情況下,任何兩個節點))。

+1

謝謝,這很有幫助。一路上,我遇到了'pbsdsh',這對了解將命令分發給沒有-t選項的節點也很有用。 –