Как профилировать использование памяти?

Senior
213 просмотров
AFK Offer AI

memory_profiler: @profile + python -m memory_profiler script.py — MiB на каждую строку. tracemalloc — встроенный: tracemalloc.start(); ...; snapshot = tracemalloc.take_snapshot(); top = snapshot.statistics("lineno"). Показывает: какой файл:строка сколько памяти выделила. pympler.asizeof.asizeof(obj) — реальный размер объекта (включая вложенные). objgraph: objgraph.show_most_common_types() — типы объектов в памяти, show_growth() — утечки. sys.getsizeof(obj) — только верхний уровень (без вложенных). Для production: tracemalloc с фильтрами. Memory leaks: циклические ссылки, глобальные кеши без ограничений, забытые callbacks.

Следующий вопрос

Как работает DBSCAN?