gpt4 book ai didi

python - 内存使用情况,如何释放内存

转载 作者:行者123 更新时间:2023-11-28 20:51:05 25 4
gpt4 key购买 nike

我正在使用 python 并且在索引文档(用于搜索引擎)时需要大量 RAM,在我停止索引过程后内存仍然已满(如 8gb RAM)。这很糟糕,因为我需要我的搜索引擎一直工作,而不是在完成索引后重置操作系统。有没有什么有效的方法来管理巨大的数组、字典和列表,以及如何释放它们。有什么想法吗?

我在 stackoverflow 上也看到了一些关于它的问题,但它们是旧的:

Python memory footprint vs. heap size

Profile Memory Allocation in Python (with support for Numpy arrays)

信息:

free -t
total used free shared buffers cached
Mem: 5839 5724 114 0 15 1011
-/+ buffers/cache: 4698 1141
Swap: 1021 186 835
Total: 6861 5910 950


top | grep python

3164 root 20 0 68748 31m 1404 R 17 0.5 53:43.89 python
6716 baddc0re 20 0 84788 30m 1692 S 0 0.5 0:06.81 python

ps aux | grep python

root 3164 57.1 0.4 64876 29824 pts/0 R+ May27 54:23 python SE_doc_parse.py
baddc0re 6693 0.0 0.2 53240 16224 pts/1 S+ 00:46 0:00 python index.py

uptime

01:02:40 up 1:43, 3 users, load average: 1.22, 1.46, 1.39


sysctl vm.min_free_kbytes

vm.min_free_kbytes = 67584

真正的问题是当我启动脚本时索引速度很快,但是当使用量增加时它变得越来越慢。

Document wikidoc_18784 added on 2012-05-28 01:03:46 "fast"
wikidoc_18784
-----------------------------------
Document wikidoc_21934 added on 2012-05-28 01:04:00 "slower"
wikidoc_21934
-----------------------------------
Document wikidoc_22903 added on 2012-05-28 01:04:01 "slower"
wikidoc_22903
-----------------------------------
Document wikidoc_20274 added on 2012-05-28 01:04:10 "slower"
wikidoc_20274
-----------------------------------
Document wikidoc_23013 added on 2012-05-28 01:04:53 "even more slower"
wikidoc_23013

文档的大小最多为一页或两页文本。索引 10 个页面大约需要 2-3 秒。

谢谢大家的帮助:)

最佳答案

从讨论来看,您似乎只是将数据存储在一个巨大的字典中(我很少会直截了本地说 ;) )也许将数据偏移到像 redis 这样的适当数据库可能会减少 python 的内存使用。它还可以使您的数据更高效、更快速地使用。

关于python - 内存使用情况,如何释放内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10781741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com