我的程序運行一個模擬,需要巨大的對象來存儲數據。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