Ipython ipcontroller占用大量内存
我现在正在使用IPython 0.10.2和Python 2.7。我在集群上启动一个ipcontroller和20个ipengine。代码结构非常简单。我只使用MultiEngineClient.execute()方法和MultiEngineClient字典接口(例如,mec['a']=b)。我当前的应用程序需要运行近两天。然而,在运行10小时后,我发现ipcontroller使用了3.1GB内存。我确实使用MultiEngineClient.clear_properties()。但它从不释放任何内存。有人知道如何释放ipcontroller的内存吗?不幸的是,在IPython 0.10中可能无法有效地释放控制器中的内存,但是Ipython ipcontroller占用大量内存,ipython,Ipython,我现在正在使用IPython 0.10.2和Python 2.7。我在集群上启动一个ipcontroller和20个ipengine。代码结构非常简单。我只使用MultiEngineClient.execute()方法和MultiEngineClient字典接口(例如,mec['a']=b)。我当前的应用程序需要运行近两天。然而,在运行10小时后,我发现ipcontroller使用了3.1GB内存。我确实使用MultiEngineClient.clear_properties()。但它从不释放任
多引擎客户端。清除挂起的结果()
方法可能会有所帮助
0.11-0.12中的控制器可以使用数据库(sqlite或mongodb)来存储结果,并且已经运行了很长一段时间,具有千兆字节的吞吐量,没有不合理的长期增长。因此,对于IPython 0.10.2,我什么都做不了。您是否尝试过清除我提到的挂起的结果()?clear_properties()函数不会影响实际请求/结果,因此不会有帮助。我的代码不使用未阻止的方法。我不确定这是否有帮助。不管怎样,我都要试试。非常感谢。嗨,明克,我刚升级到IPython 0.12。对于同一个问题,IPython 0.12是否支持在不使用任何数据库的情况下显式释放内存?是的,Client.purge_results()允许您指示中心忘记过去的结果。