Как определить, какая программа допускает утечку памяти

Как определить, какая программа допускает утечку памяти

Я использую Ubuntu 15.04, и мое использование памяти в режиме ожидания обычно составляет около 1 ГБ, в последнее время я получаю memory allocation failedот node.

Я заметил, что через день или два моя неиспользуемая память увеличивается до 4 ГБ. Я знаю, что это либо программа, либо ubuntu. Я очень надеюсь, что это не ubunut, чтобы мне не пришлось переустанавливать его или понижать версию.

Какой инструмент лучше всего поможет определить, какая программа вызывает утечку памяти, или это сама Ubuntu?

решение1

Вы можете сделать это двумя способами.

1) Запустите top command (to run non-interactively, type top -b -n 1). Чтобы увидеть приложения, которые допускают утечку памяти, посмотрите на следующие столбцы:

RPRVT - resident private address space size
RSHRD - resident shared address space size
RSIZE - resident memory size
VPRVT - private address space size
VSIZE - total memory size

2) Возьмите отладчик/профилировщик памяти, напримерВальгринди запустите в нем программы одну за другой.

Связанный контент