我的程序运行一个模拟,需要巨大的对象来存储数据。blob的大小大于2-3GB。尽管我的MBP中应该有足够的内存,python(Mac OS X上的Python 2.7.3,来自端口)似乎无法使用它,系统完全冻结。在python中处理巨大的数组
要保存模拟的状态,我用泡菜,但也不会为过大对象的工作,它好像泡菜将倾之前复制在内存中的对象...
问题:是否有一个标准库可以处理巨大的Python数据结构(字典,集合,列表),而不需要一直保存在内存中?或者,有没有办法强制Python在虚拟内存中运行? (我对numpy不是很熟悉,会在这种情况下帮助我吗?)
在此先感谢!
您正在使用64位Python吗? –
您是否尝试过不将所有数据存储在一个对象中,而是将其保存为磁盘上的文件并逐个读取并逐步执行处理? –
我知道它并没有帮助你,但我昨天晚上用了一个6G元组列表的例子,python能够处理没问题,MacOS 10.8在这里。所以这不是拉力python的问题,我猜。我的机器有20G的总内存。 – favoretti