uso de memória, como liberar memória

Eu estou usando python e quando documentos de indexação (para o motor de busca) leva muita memória RAM, depois de eu parar o processo de indexação a memória ainda está cheia (como 8GB de RAM). Isso é ruim porque eu preciso do meu mecanismo de pesquisa para trabalhar o tempo todo e não para redefinir o sistema operacional quando terminei a indexação. Existe alguma maneira eficiente de gerenciar grandes matrizes, dicionários e listas e como liberá-los. Alguma ideia?

Eu também vi algumas perguntas sobre isso no stackoverflow, mas elas são antigas:

Pegada de memória Python vs. tamanho de heap

Alocação de memória de perfil em Python (com suporte para matrizes Numpy)

Informação:

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

O problema real é quando eu inicio o script, a indexação é rápida, mas quando o uso está aumentando, está ficando mais lento.

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

O tamanho dos documentos é uma ou duas páginas de texto máximo. A indexação de 10 páginas leva cerca de 2-3 segundos.

Tnx todos pela ajuda :)

questionAnswers(3)

yourAnswerToTheQuestion