Python 3.4+tracemallocфункция
tracemalloc.get_traced_memory()
замеры памяти
Возвращает кортеж (текущий, пиковый) объём отслеживаемой памяти в байтах.
Синтаксис
current, peak = tracemalloc.get_traced_memory()
Считается только память, выделенная через аллокаторы Python после start(), а не весь процесс: цифры не совпадут с RSS из диспетчера задач, а память C-расширений, взятая мимо аллокатора Python, не видна вовсе. Пик полезен для кратковременных всплесков — промежуточный список, уже удалённый, в текущем значении не виден, а в пике остаётся.
Примеры
import tracemalloc
tracemalloc.start()
tmp = [0] * 100_000
del tmp
current, peak = tracemalloc.get_traced_memory()
print(current, peak) # → ? числа зависят от версии и машины
print(peak >= 800_000, current < peak) # → True True
tracemalloc.stop()
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности