2013-08-26 48 views
1

我正在啓動一個與slurm並行執行的工作。此作業需要在每個節點中都存在特定的目錄結構,但如果在作業腳本中使用mkdir,則只會在第一個節點中創建目錄。我如何確保在作業使用的所有節點中創建目錄?Slurm:在所有節點上創建一個目錄

回答

1

我想我必須回答自己。這不是一個完美的解決方案,但它對我來說足夠好。在作業腳本我用這個真正的工作開始之前:

for node in $(scontrol show hostnames $SLURM_NODELIST) ; do 
    srun -N 1-1 -n 1 -w $node mkdir -p /directory/to/be/created 
done 
sleep 60 

$SLURM_NODELIST節點列表的簡稱,與scontrol聲明我得到的全名。如果沒有sleep命令,我有時會遇到某些目錄不存在的問題,因此只是爲了安全而添加它。

問題是我需要知道哪些目錄需要事先創建,這在我的情況下是可能的,但在其他情況下可能會更困難。

0

你可以簡單地在腳本中添加

srun mkdir -p /directory/to/be/created

。它可能嘗試並根據羣集配置多次創建相同的目錄,但它無論如何都會起作用。

相關問題