Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Утечки памяти. / 22 сообщений из 22, страница 1 из 1
04.11.2015, 12:26
    #39094361
redwhite90
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
На собеседовании спросили -

открываешь task manager - там пишет, что приложение использует 16 гб памяти.

открываешь jvisualvm - там пишет, что оно занимает 2 гб

1. Как такое может быть ?
2. Что с этим делать?
...
Рейтинг: 0 / 0
04.11.2015, 13:20
    #39094381
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
redwhite901. Как такое может быть ?

Leak в нативном коде
Off-heap leak
Metaspace
Бага в JVM


redwhite902. Что с этим делать?
Проинспектировать код на предмет использования JNI/JNA
Проинспектировать код на предмет использования DirectBuffer, Unsafe или библиотек, которые ими пользуются (обычно это кэши)
Metaspace, вроде должен в jvisualvm для восьмерки отображаться. Надо проверить. Не интересовался этим вопросом. И там лимит, вроде есть аналогичный MaxPermSize.
Бага в JVM маловероятна, так как разница довольно значительная. То есть нужно было выхватить никому не известную багу и оочень интенсивно её использовать.
Снят дамп памяти и попробовать посмотреть его на предмет данных из приложения.

Перезепустить сервер с монитором памяти, проанализировать рост offheap во времени и сравнить с логами приложения, чтобы понять на каких действиях растёт память.
...
Рейтинг: 0 / 0
04.11.2015, 16:35
    #39094470
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Тут вообще вопрос может-быть на смекалку. Типа jvisualvm показывает размер jvisualvm.

А по сабжу... вообще мало данных. Что за task manager? Какого процесса?
...
Рейтинг: 0 / 0
04.11.2015, 17:21
    #39094511
redwhite90
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Blazkowiczredwhite901. Как такое может быть ?

Leak в нативном коде
Off-heap leak
Metaspace
Бага в JVM


redwhite902. Что с этим делать?
Проинспектировать код на предмет использования JNI/JNA
Проинспектировать код на предмет использования DirectBuffer, Unsafe или библиотек, которые ими пользуются (обычно это кэши)
Metaspace, вроде должен в jvisualvm для восьмерки отображаться. Надо проверить. Не интересовался этим вопросом. И там лимит, вроде есть аналогичный MaxPermSize.
Бага в JVM маловероятна, так как разница довольно значительная. То есть нужно было выхватить никому не известную багу и оочень интенсивно её использовать.
Снят дамп памяти и попробовать посмотреть его на предмет данных из приложения.

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

Когда я сказал, что не знаю, был какой-то разговор про то,что при использовании массивов например такое может случаться.
...
Рейтинг: 0 / 0
04.11.2015, 17:23
    #39094514
redwhite90
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
maytonТут вообще вопрос может-быть на смекалку. Типа jvisualvm показывает размер jvisualvm.

А по сабжу... вообще мало данных. Что за task manager? Какого процесса?

виндовый например (ctrl+shift+escape)
...
Рейтинг: 0 / 0
04.11.2015, 17:27
    #39094518
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
redwhite90Когда я сказал, что не знаю, был какой-то разговор про то,что при использовании массивов например такое может случаться.
Сомневаюсь.
...
Рейтинг: 0 / 0
04.11.2015, 17:32
    #39094527
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Blazkowiczredwhite90Когда я сказал, что не знаю, был какой-то разговор про то,что при использовании массивов например такое может случаться.
Сомневаюсь.
Возможно идёт речь о каком-то маленьком моменте времени когда массив был аллоцирован в Eden на 14 Гб
и тут-же обнулён и удалён GC а ОС видит некую ретроспективу. Вобщем это надо пробовать на разных
ОС и настройках GC и MM.
...
Рейтинг: 0 / 0
04.11.2015, 17:46
    #39094536
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
maytonВозможно идёт речь о каком-то маленьком моменте времени когда массив был аллоцирован в Eden на 14 Гб
и тут-же обнулён и удалён GC а ОС видит некую ретроспективу. Вобщем это надо пробовать на разных
ОС и настройках GC и MM.
Для такого финта ушами нужно ещё чтобы куча пошринкалась с 16Гиг до 2х. Как-то маловероятнов выглядит.
...
Рейтинг: 0 / 0
04.11.2015, 18:26
    #39094567
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
По поводу массива. Тут вобщем-то больше Integer.MAX_VALUE минус какая-то шапка
не выделить.
...
Рейтинг: 0 / 0
04.11.2015, 18:46
    #39094579
redwhite90
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
mayton,

так можно ж создать 10500 массивов
...
Рейтинг: 0 / 0
04.11.2015, 19:02
    #39094592
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Можно. Но атомарность внесла-бы больше смысла в обсуждение.
...
Рейтинг: 0 / 0
04.11.2015, 19:08
    #39094595
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
redwhite90mayton,

так можно ж создать 10500 массивов
Они все будут в куче.
...
Рейтинг: 0 / 0
04.11.2015, 19:44
    #39094610
redwhite90
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Blazkowiczredwhite90mayton,

так можно ж создать 10500 массивов
Они все будут в куче.

Это я так... развиваю теорию, что если с каждого массивчика по чуть чуть вытекает, то можно создать много массивчиков и утечет много.
...
Рейтинг: 0 / 0
04.11.2015, 19:51
    #39094611
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Ох уж эти программисты ...
О каком из трёх размеров памяти "виндового диспетчера задач" идёт речь?

P.S. javaw -Xms512m -Xmx512m ...jedit...
P.P.S. Нет, это не все варианты "памяти", которые можно увидеть.
...
Рейтинг: 0 / 0
04.11.2015, 20:07
    #39094618
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Наиболее вероятный ответ на исходный вопрос: "А нефиг ставить отфонарные -Xms".
...
Рейтинг: 0 / 0
04.11.2015, 20:21
    #39094628
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Basil A. Sidorov, вово... я о том и толкую.
...
Рейтинг: 0 / 0
04.11.2015, 20:27
    #39094633
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Не о том же - скриншоты сняты для только что запущенного jEdit-а без каких либо открытых файлов (без всяких житрожопостей с поколениями).
...
Рейтинг: 0 / 0
05.11.2015, 06:39
    #39094814
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
redwhite90,

так jvm показывает память которая аллоцирована java-машиной для вашего приложения скорее всего, а если память аллоцируется в используемых внешних нативных библиотеках - там её нет, зато в инспекторе есть
...
Рейтинг: 0 / 0
10.11.2015, 14:43
    #39099613
chabapok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Навскидку, - jvisualvm показывает только хип, а винда показывает сколько приложение может занять по максимуму если захочет.
...
Рейтинг: 0 / 0
13.11.2015, 17:37
    #39103158
redwhite90
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Blazkowicz,

BlazkowiczOff-heap leak
а можно поподробнее что это за такое?(не гуглится)
...
Рейтинг: 0 / 0
13.11.2015, 18:53
    #39103205
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
redwhite90Blazkowicz,

BlazkowiczOff-heap leak
а можно поподробнее что это за такое?(не гуглится)

Blazkowicz...DirectBuffer, Unsafe или библиотек, которые ими пользуются (обычно это кэши)
...
Рейтинг: 0 / 0
14.11.2015, 21:26
    #39103621
redwhite90
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Утечки памяти.
Blazkowiczredwhite90Blazkowicz,

пропущено...

а можно поподробнее что это за такое?(не гуглится)

Blazkowicz...DirectBuffer, Unsafe или библиотек, которые ими пользуются (обычно это кэши)
А где обзорно можно почитать про хипы, стеки, офф хипы, дайрект буфферы, что там еще в этом списке? Про их назначение?
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Утечки памяти. / 22 сообщений из 22, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]