作者noonee (feynman511)
看板Fortran
標題[問題] 寫入檔案
時間Tue Oct 27 12:51:45 2015
我有一個用fortran 寫的計算 通常一跑就要好幾天
程式裏面有要求跑到一個段落就要把進度寫進輸出檔
但是實際上執行卻發現 程式似乎不會每執行到相關地方就輸出
而是在不斷堆積在記憶體裏面 等累積到一定的量才真的寫入檔案
當然程式最後跑完還是會全部寫進檔案
但是想問有沒有方法 可以讓他正在跑的時候 輸出都即時寫入檔案
或是減少在記憶體累積的量?
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 76.247.22.141
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Fortran/M.1445921508.A.F99.html
1F:推 hiyiyi: 寫完後關閉檔案,欲寫入資料再用append參數開啟檔案 10/27 13:40
2F:推 rex0707: 我的程式就會到一定的進度就輸出檔案欸 你是不是寫錯了 10/27 16:41
3F:→ noonee: 謝謝回應 我先測試看看 10/28 05:22
4F:→ noonee: 另外 我想我內文講錯了一部份 10/28 05:23
5F:→ noonee: 這個狀況最嚴重的 是程式本身會要求把東西print out到 10/28 05:24
6F:→ noonee: 螢幕 而在實際執行時寫 $./exe > output_record 10/28 05:25
7F:→ noonee: 如果在執行中去看 output_record 就會發現並非總是秀出 10/28 05:25
8F:→ noonee: 實際的進度 10/28 05:26
10F:→ noonee: 非常感謝 我最後用了unbuffer 的確馬上就寫入紀錄檔 10/29 02:26
11F:→ noonee: 真是非常感謝 這問題麻煩很久了 10/29 02:26