[問題] 使用 Python 進行平行運算的 RAM 使用量已刪文
最近小弟在跑一些耗時的運算,會重覆多次類似的運算
本來很單純地依序跑,跑完一次運算後,把結果用 print 輸出
記憶體用量穩定地在 400 到 500 MB 左右
但是,程式執行蠻久的
後來想到用平行運算來縮短運算時間
試了 pp 和 dipsy,發現記憶體會慢慢膨脹,到十幾 GB,而且還持續增加
後來覺得怪怪的,就把程式 kill 掉
附上程式碼,保留和平行運算相關的部分
https://pastebin.com/ARpXfcww
小弟沒什麼平行運算的經驗
不太知道這些平行運算模組的原理
只是臨時有需要,試著拉幾個模組做運算
不是很確定記憶體膨脹的原因
想請各位大大建議比較好的模式
不會記憶體一直膨脹,又可以同時運算多次
感恩
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.71.94.31
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1460612440.A.6B2.html
推
04/14 14:09, , 1F
04/14 14:09, 1F
※ 編輯: Neisseria (203.71.94.1), 04/14/2016 17:08:41
→
04/15 19:28, , 2F
04/15 19:28, 2F
→
04/15 19:30, , 3F
04/15 19:30, 3F
→
04/15 19:31, , 4F
04/15 19:31, 4F
我的程式會產生一個新的 subgraph,所以會有寫入記憶體的過程
如果自己 fork 會比較好嗎?因為 process 間不會互傳資料
※ 編輯: Neisseria (61.57.91.182), 04/15/2016 22:35:07
→
04/16 10:27, , 5F
04/16 10:27, 5F
→
04/16 10:28, , 6F
04/16 10:28, 6F
Python 近期熱門文章
PTT數位生活區 即時熱門文章