Каковы накладные расходы памяти на анализ кучи с помощью jhat?

jhat - отличный инструмент для анализа дампов кучи Java, но для больших куч легко потерять много времени. Если установить слишком маленькую динамическую кучу jhat, может потребоваться 15 минут для отказа и нехватки памяти.

Я хотел бы знать следующее: существует ли практическое правило относительно того, сколько -Xmx heap я должен отдавать jhat в зависимости от размера файла heapdump? На данный момент только с учетом двоичных дампов кучи.

Некоторые очень ограниченные эксперименты показывают, что его как минимум в 3-4 раза больше дампа кучи. Я смог проанализировать файл с кучей размером три и изменить гигабайт с помощью -J-mx12G.

Есть ли у кого-нибудь еще более убедительные экспериментальные данные или понимание того, как jhat представляет объекты кучи во время выполнения?

точки данных:

  • этот поток указывает на Накладные расходы в 5 раз, но мои эксперименты с поздней моделью jhats (1.6.0_26) показывают, что это не так уж плохо
  • эта ветка указывает на ~ 10x накладные расходы
  • коллега поддерживает теорию 10x: файл кучи 2,5 ГБ не работает с -J-mx23G
  • еще один коллега получил дамп размером 6,7 Гбайт для работы с кучей 30 Гбайт с накладными расходами в 4,4 раза.

person Adam Lehenbauer    schedule 05.10.2011    source источник
comment
Вы пробовали Eclipse Memory Analyzer в качестве альтернативы jhat?   -  person Joel    schedule 06.10.2011
comment
Анализатор памяти Eclipse хорош. Другой альтернативой открытию больших дампов кучи является SAP Memory Analyzer или YourKit. Последнее не бесплатно.   -  person DarkByte    schedule 06.10.2011
comment
Я использовал анализатор памяти, он неплохой.   -  person Drizzt321    schedule 06.10.2011
comment
Хорошо, хорошо, я обязательно проверю MAT Eclipse. Тем не менее, я все еще заинтересован в том, чтобы разобраться с джхатом. Возможность сбросить дамп на любой машине, запустить jhat и отправить ссылку очень полезна.   -  person Adam Lehenbauer    schedule 06.10.2011
comment
Разве Eclipse Memory Analyzer и проект SAP не одно и то же?   -  person Big Rich    schedule 30.10.2012