Как измерить требования к памяти во время выполнения приложения на платформе Windows? - PullRequest
2 голосов
/ 13 декабря 2008

Как измерить требования к памяти во время выполнения приложения на платформе Windows?

Ответы [ 3 ]

2 голосов
/ 13 декабря 2008

Perfmon.exe будет контролировать использование процесса.

Запустите perfmon.exe, щелкните правой кнопкой мыши Добавить счетчики, выберите Process для объекта Performance, затем выберите такие вещи, как виртуальные байты, рабочий набор и файл страницы.

1 голос
/ 13 декабря 2008

Полагаю, вы имеете в виду использование памяти в определенный момент времени, а не то, сколько она потенциально может понадобиться.

Вы можете получить информацию о том, сколько процесс потребляет через Windows API, например, GetProcessMemoryInfo. Windows распределяет память по блокам, поэтому она может быть более точной, чем просто проверка объема используемой памяти или кучи.

Подробнее с MSDN

0 голосов
/ 15 декабря 2008

«Требования к памяти» не очень четко определены, во-первых. Когда вы начнете, ваш исполняемый файл будет связан со многими DLL. Вместе с первым стеком это формирует ваш начальный процесс. Затем ваш процесс может запустить дополнительные потоки, выделить больше памяти и / или карту памяти для некоторых файлов.

Теперь Wwindows не даст вам реальной оперативной памяти для всех этих нужд. Многие библиотеки DLL уже загружены по другим причинам, поэтому вы будете использовать эту оперативную память. Дополнительная память для стеков выделяется, когда вы получаете мягкие переполнения стека. Файлы с отображенной памятью выделяют ОЗУ в случае сбоя этих страниц.

Итак, один из важных вопросов - это то, что вы действительно хотите. Вы должны ответить на этот вопрос в первую очередь.

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