Я запускаю приложение go и использую pprof для получения профиля кучи, как показано ниже:
curl -s http://localhost:<port>/debug/pprof/heap > heap_profile.out
go tool pprof heap_profile.out
В результате я получаю это: Showing nodes accounting for 507.98MB, 99.41% of 510.98MB total
. Но я не знаю, откуда у него эти 507,98 МБ. Когда я проверяю текущее использование памяти с помощью top
, это показывает, что мое приложение использует только 200 МБ памяти (значение RES в результате команды top
). Может кто-нибудь объяснить, в чем разница между общим объемом памяти in_use, отображаемым профилем кучи, и значением mem_usage, заданным top
?