[問題] JOB會停在server上不動也沒任何錯誤訊息

看板Linux作者 (pete)時間9年前 (2016/04/27 21:27), 9年前編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
各位好 我用Mpif90 編譯產生一個執行檔a.out 然後這個a.out再跑一段時間之後就停頓在那邊 也沒有錯誤訊息,就只是閒置那邊 我目前因為無法從任何訊息文件得知job是在哪個地方出問題 我自己猜測是I/O 不同步 或其他原因 有人知道要怎麼去檢測這個job閒置的原因為何? 我有想過 1. 在mpif90 那邊加一些除錯的選項 -debug 之類 2. 用stat 之類的指令去偵測a.out正在等待哪個子程序的回應或檔案的讀取,..等 能否請版友給我一些方向讓我可以順利解決此問題? 萬分感謝~~~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.230.30.117 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1461763674.A.82D.html ※ 編輯: peter308 (61.230.30.117), 04/27/2016 21:36:48 ※ 編輯: peter308 (61.230.30.117), 04/27/2016 21:38:09

04/28 02:35, , 1F
在程式裡面加些print看看是不是卡在某一段吧
04/28 02:35, 1F

04/28 12:11, , 2F
gdb attach 後中斷它然後 bt
04/28 12:11, 2F

04/29 14:07, , 3F
直覺是你的程式被blocking message passing函式卡住
04/29 14:07, 3F

04/29 14:08, , 4F
如同樓上所提 用debugger或加printf去查
04/29 14:08, 4F
感謝版友的建議 我找到bug 被trap在一個recursion subroutine中 謝謝! ※ 編輯: peter308 (140.115.30.19), 04/29/2016 16:16:34
文章代碼(AID): #1N8BvQWj (Linux)
文章代碼(AID): #1N8BvQWj (Linux)