[问题] 使用 Python 进行平行运算的 RAM 使用量

楼主: Neisseria (Neisseria)   2016-04-14 13:40:37
最近小弟在跑一些耗时的运算,会重复多次类似的运算
本来很单纯地依序跑,跑完一次运算后,把结果用 print 输出
内存用量稳定地在 400 到 500 MB 左右
但是,程式执行蛮久的
后来想到用平行运算来缩短运算时间
试了 pp 和 dipsy,发现内存会慢慢膨胀,到十几 GB,而且还持续增加
后来觉得怪怪的,就把程式 kill 掉
附上程式码,保留和平行运算相关的部分
https://pastebin.com/ARpXfcww
小弟没什么平行运算的经验
不太知道这些平行运算模组的原理
只是临时有需要,试着拉几个模组做运算
不是很确定内存膨胀的原因
想请各位大大建议比较好的模式
不会内存一直膨胀,又可以同时运算多次
感恩
作者: IKAFIRE (没有)   2016-04-14 14:09:00
贴个程式码比较好判断问题出在哪
作者: gozule (好冷啊~~)   2016-04-15 19:28:00
程式是不是在执行中会写入东西到内存当中? 没记错的话这种情形应该是process的copy on write,所以本来是共用的内存,写入会复制好几份,造成内存用光的情形

Links booklink

Contact Us: admin [ a t ] ucptt.com