Проверьте максимальное использование памяти программы Python под Windows - PullRequest
1 голос
/ 03 февраля 2012

Я хотел бы получить изнутри программы Python максимальную физическую память, используемую программой Python (ActiveState Python 3.2, под Windows 7).

В идеале, каждые 0,1 с или около того, я 'я хотел бы опросить использование памяти, и если оно превышает максимально допустимое значение, обновленное максимальное значение (глобальная переменная, хранящаяся где-то),

ОБНОВЛЕНИЕ:

Я понимаю, что мой вопросблизкий дубликат Какой профилировщик памяти Python рекомендуется? .

Извините за неясность.У меня есть две конкретные проблемы, которые, насколько мне известно, не решаются обычным профилировщиком памяти:

  1. Мне нужно видеть не только память, выделенную Python, но и общую память, используемуюпрограмма Python (под Windows это будет включать DLL и т. д.).Другими словами, под Windows это именно то, что вы увидите в Диспетчере задач .

  2. Мне нужно видеть максимальную память, а не память вв любой момент.Я не могу придумать способ сделать это, кроме как проводить многочисленные проверки памяти по всему коду всякий раз, когда я думаю, что выделяю что-то большое.

Ответы [ 3 ]

2 голосов
/ 23 июня 2012

Я думаю, что вы можете зайти в Панель управления, Инструменты администратора, Исполнения, нажать «+», выбрать «Процессор» в «Объекте производительности», Байты с выгружаемым пулом или Байты с невыгружаемым пулом в левом столбце и выбрать свой процесс.под правой колонкой.Вы можете создать файл журнала с помощью монитора производительности.

1 голос
/ 23 июня 2012

Я не нашел способа сделать именно то, что я хочу с Python.

Однако, играя в диспетчере задач Windows 7, я обнаружил, что могу добавить столбец «Пиковый рабочий набор (память)». Так что, если я просто остановлю программу python до ее выхода (и поймаю исключения из main() для приостановки по той же причине), я смогу увидеть пик памяти в диспетчере задач.

Я знаю, что это глупо (например, оно не позволяет мне печатать это в файл журнала, делать что-то на основании того, как я использую память и т. Д.), Но это лучше, чем ничего.

0 голосов
/ 03 февраля 2012

Вот ссылка на похожий вопрос:

Какой профиль памяти Python рекомендуется?

Я использовал Guppy / Heapy и Meliae.Они немного отличаются, но я считаю, что оба они весьма полезны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...