Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Почему так много памяти стало уходить? раньше расходовалось 50 мб, теперь - 250 
:(
    Опции темы
Anton Vatchenko
Дата 6.9.2007, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 21.5.2004

Репутация: нет
Всего: -1



У меня есть проект... Раньше он был немного меньше (на 10% меньше кода, а также мои расчеты на затрачиваемую память практически не изменились)... Другими словами проект вырос, но этого почти не заметно... Еще месяц назад расходовалось 50мб оперативки... А теперь уходит 250. Время от времени вызываю подсчет типа Runtime.total - Runtime.free, и получаю 1 мб занятой памяти... Проблема в том, что раньше и сейчас на компе с Windows потреблялось около 50 мб, а вот при загрузке на сервер с Линух (256мб оперативки) уходит вся память... Сделал ограничение -Xms16m: -Xmx16m - помогло... Стало съедать 190 мб... Но все равно это не дело... Что бы это могло быть?


--------------------
user posted image
PM MAIL   Вверх
Aoli
Дата 6.9.2007, 23:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 24.1.2007

Репутация: 1
Всего: 0



1. Реализация jvm под Win и под Lin отличается
2. Обычно jvm под Lin запускается в server моде. Потому, она такая жадная smile
PM WWW ICQ   Вверх
Anton Vatchenko
Дата 7.9.2007, 07:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 21.5.2004

Репутация: нет
Всего: -1



А посоветуйте как бы это исправить?


--------------------
user posted image
PM MAIL   Вверх
Tony
Дата 7.9.2007, 09:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1159
Регистрация: 3.3.2006
Где: Riga

Репутация: нет
Всего: 12



Запускать с клю4ём java -client.Хотя я думаю врятли поможет. Напиши результат интерсно о4ень. smile 

Это сообщение отредактировал(а) Tony - 7.9.2007, 09:29


--------------------
user posted image
user posted image
PM MAIL Skype   Вверх
Anton Vatchenko
Дата 7.9.2007, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 21.5.2004

Репутация: нет
Всего: -1



Сразу вылетело...

Хотя может я неправ:
Код

java -classpath mysql.jar:-Xms32m:-Xmx32m:-client: App


Из-за плохого знания Linux в зависимости от пробелов после : и перед вылетают разные ошибки...

Это сообщение отредактировал(а) Anton Vatchenko - 7.9.2007, 12:18


--------------------
user posted image
PM MAIL   Вверх
Бонифаций
Дата 7.9.2007, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 827
Регистрация: 15.9.2005
Где: Brisbane

Репутация: 1
Всего: 40



Обьясняю. Линуксовая реализация делает mmap всех библиотек для убыстрения доступа. Поэтому размер всех бибилиотек просто добавляется в ps/top в используемую память несмотря на то, что реально эти бибки не в памяти а на диске. расходуется только адресное пространство. Оперативка не расходуется. Это позволяет очень быстро обращаться к любым бибкам. 

 Фактически оперативки линуксовая реализация ест примерно столько же что win реализация.  

windows не умеет делать mmap файлов, поэтому jvm под windows просто считывает используемые бибки в оперативную память. 

В следующих (за jvm 1.6 ) версиях linux jvm обещали сделать ключик, чтобы имитировать win поведение. 


--------------------
 Бонифаций.
 
PM MAIL ICQ Skype GTalk Jabber YIM   Вверх
Anton Vatchenko
Дата 7.9.2007, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 21.5.2004

Репутация: нет
Всего: -1



А как же тогда мне узнать реальный расход оперативки? А то при вызове top слишком пугает строка Mem: 0kb free


--------------------
user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0461 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.