Memory Leak finden
Verfasst: Mittwoch 6. November 2013, 15:55
Hallo,
ich habe ein recht umfangreiches Python programm (>10k loc). Das läuft 24/7 und bekommt die Daten zur Verarbeitung in regelmäßigen Abständen per upd.
Das Programm brauch unter cpython ca 15MB Ram und nach einer laufzeit von ca. 3 Wochen steht der RAM Verbrauch bei ca 30 MB. Das ist nicht weiter tragisch und so auch nie ins Gewicht gefallen.
Jetzt möchte ich das Programm gerne wegen der Performance mit pypy laufen lassen. Es läuft auch über pypy allerdings geht der Speicherverbrauch innerhalb weniger Stunden ans Limit des Servers. Also es kommen ca 100 MB Ram pro Stunde laufzeit hinzu (jenachdem wieviele Daten per UDP zur Verarbeitung gesendet werden).
Was sind meine Optionen um das Speicherleck zu finden?
ich habe ein recht umfangreiches Python programm (>10k loc). Das läuft 24/7 und bekommt die Daten zur Verarbeitung in regelmäßigen Abständen per upd.
Das Programm brauch unter cpython ca 15MB Ram und nach einer laufzeit von ca. 3 Wochen steht der RAM Verbrauch bei ca 30 MB. Das ist nicht weiter tragisch und so auch nie ins Gewicht gefallen.
Jetzt möchte ich das Programm gerne wegen der Performance mit pypy laufen lassen. Es läuft auch über pypy allerdings geht der Speicherverbrauch innerhalb weniger Stunden ans Limit des Servers. Also es kommen ca 100 MB Ram pro Stunde laufzeit hinzu (jenachdem wieviele Daten per UDP zur Verarbeitung gesendet werden).
Was sind meine Optionen um das Speicherleck zu finden?