Я пытаюсь отладить использование памяти 32-битного собственного C ++ приложения с помощью инструментов диагностики Visual Studio.
Это приложение работает около 5 минут и потребляет (на пике) более 3 ГБ ОЗУ.
При использовании Visual Studio Diagnostics для профилирования оперативной памяти приложение работает правильно (хотя и значительно медленнее). Я делаю несколько снимков, пока он работает.
Когда это заканчивается, и я получаю следующую ошибку:
Сеанс диагностики остановлен с ошибками.
Недостаточно места на диске.
Диагностика не отображается.
Я думал о присоединении к запущенному процессу, сделать снимок и отсоединиться. Тем не менее, я не мог понять, как профилировать ОЗУ, подключившись к запущенному процессу. Я был в состоянии только профилировать процессор. Я не уверен, что профилирование ОЗУ поддерживается при подключении к процессу.
Кто-нибудь видел эту проблему раньше? Есть идеи, как обойти это?
В конце концов я получил необходимые данные UMDH.
UMDH сделал эту работу простым и понятным способом, в то время как другие инструменты (я пробовал «Visual Studio Diagnostics» и «MTuner») с треском провалились.
Задача ещё не решена.
Других решений пока нет …