2
我想知道爲什麼Python的mmap()的性能隨着時間的推移而下降?我的意思是我有一個小應用程序,它可以對N個文件進行更改,如果設置很大的話(不是太大,比如1000)第一個200是惡魔速度,但之後它會變得越來越慢。看起來我應該在一段時間內釋放內存,但不知道如何,最重要的是爲什麼Python不會自動執行此操作。Python的mmap()性能隨着時間而下降
任何幫助?
- 編輯 -
這是類似的東西:
def function(filename, N):
fd = open(filename, 'rb+')
size = os.path.getsize(filename)
mapped = mmap(fd.fileno(), size)
for i in range(N):
some_operations_on_mmaped_block()
mapped.close()
我們可以看到一些代碼嗎?這可能表明GC不工作的原因。 –
添加的代碼,它實際上幾乎所有的東西,在循環內我做了3個文件操作,如果語句正確。 – lihidle
您是否真的看過「頂部」或任務管理器或其他平臺? Python是否佔用越來越多的內存? CPU掛鉤?或者它只是你的硬盤緩存填滿? – agf