2016-04-10 12 views
2

我有一個簡單的使用exit()的問題。C庫函數退出()與羣集上的SLURM

上下文正在羣集上運行一個用於並行計算的程序,所以我們安裝了一個管理和監視所有進程的Slurm系統。
問題現在,在我的程序中調用exit(1)時,SLURM似乎沒有註冊,並且CPU保持忙碌狀態,儘管程序已經終止,但仍無用地燒掉了我分配的CPU小時。

所以我問題是:
是什麼exit()什麼不同相比main()定期return 1
有沒有簡單的方法來解決我的退出信號?

回答

0

SLURM的默認行爲是允許完成作業中的進程,即使一個進程使用非零退出代碼崩潰或退出。您可以通過在slurm.conf中設置KillOnBadExit=1或使用-K/--kill-on-bad-exitsrun來更改此設置。

+0

由於mpirun/mpiexec是srun的衍生物,我想這應該與他們一起工作?我會試用並報告,謝謝。 – AtmosphericPrisonEscape