memory leak troubleshooting techniques
webmaster at beyond-thoughts.com
Wed Jul 30 00:20:28 CEST 2003
Adam Deutsch wrote:
> I would like to ask some advice about tracking down memory leaks in Python
> We have a python application running on Python 2.0.1 in an embedded Linux
> environment (kernel version 2.4.7). We have recently detected a memory leak
> that we can see from "ps aux" is attributable to the Python processes.
> Running Sam Rushing's (http://www.nightmare.com/medusa/memory-leaks.html)
> get_refcounts() function does not yield any smoking guns: the reference
> counts for all classes remain stable even as memory use climbs.
> Is there any systematic method of determining how Python is using its
> allocated memory?
There might be one more readon for a memory-leak -- besides an
Have you thought about a growing string? (or an similar object)
In Python a string can have 80 MB without problems / not "hurting" python.
Of course the refount won't get higher as there's just one string -- but
this one might be getting *huge*.
I had such a problem when programming PersistentThreads. Making internal
calls to the "ZopeRequestDispatcher" caused sys.path to grow.
Unfortunately I don't know a way in Python to list objects that consume
more than xy bytes of memory.
More information about the Python-list