2009-08-06 11 views

Odpowiedz

3

Podobne pytanie:

Python memory profiler

Wygląda istnieją profilowania pamięci dla Pythona.

PySizer wydaje się popularny. Heapy to kolejny.

Google: "profiler pamięci Pythona", aby uzyskać więcej informacji.

+0

+1 - bardzo podobny. Myślę, że to pytanie można zamknąć jako duplikat. –

11

Jeśli chcesz poznać całkowitą pamięć używaną przez interpreter, w systemie Linux przeczytaj /proc/self/statm.

Jeśli chcesz dowiedzieć się, ile pamięci zużywają twoje obiekty, użyj Pympler.

1

Nie sądzę, że istnieje prosty sposób na zrobienie tego. W praktyce, na systemie Unix prawdopodobnie zrobiłbym coś z os.getpid() i wywołanie ps lub czytanie wpisów w/proc.

Python 2.6 dodaje sys.getsizeof(), które można wykorzystać w porozumieniu z gc.get_objects(), aby dojść rozmiar zestawu roboczego obiektów:

>>> print sum([sys.getsizeof(o) for o in gc.get_objects()]) 
561616 

nie sądzę, że” być dobrym pomysłem w praktyce.

2

Użyłem niegdyś fragmentu, który znalazłem na ActiveState i wydawało się, że działa dobrze. W rzeczywistości używa tej samej metody Martin v. Löwis zasugerował.

Powiązane problemy