|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Alex Mizrahi 2:5020/400 19 Jun 2007 03:31:05 To : Eugene B. Berdnikov Subject : Re: memory usage -------------------------------------------------------------------------------- (message (Hello 'Eugene) (you :wrote :to '("Alex Mizrahi" <udodenko@users.sourceforge.net>) :on '(Mon, 18 Jun 2007 23:08:31 +0000 (UTC))) ( AM>> но отключить swap оно не даёт! EBB> При размере занятой виртуальной памяти больше физической - EBB> естественноне даст. Куда dirty pages выгружать прикажете? dirty pages там как кот наплакал. anon вписывается. что ещё гадине надо?? AM>> т.е. памяти действительно не хватает, но как узнать сколько именно? EBB> Hе поверите - набрать free. :-) Сколько лежит на свопе - столько и EBB> не хватает линуксу для полного "щастья". Грубо говоря, ядро ничего EBB> не выгружает в своп без необходимости. ядро оптимизирует под какую-то сферическую задачу в памяти, насколько я понимаю, оно стремится добиться определённой пропорции между active и inactive. мне же нужно решить другую задачу -- что Java была в памяти, а с файлами я практически не работаю, так что кэш меня не интересует. ядро сгрузило в итоге в своп 200 мегабайт. из которых 150 правда было SwapCached -- т.е. продублированы в памяти. опыт показал, что если выделить 300 мегабайт вместо 256, то оно прекрасно живёт без свопа, даже имея при этом 23 MB free (в т.ч. 11 cached). (т.е. в принципе можно оценить сколько памяти нужно прибавить как размер свопа минус SwapCached, но это скорее интуитивно). да, при этом статистика по памяти выдаётся несколько другая.. top выдаёт 259 MB RES для Java, но я ему больше не верю :) (похоже он учитывает только то что в RAM, а не вообще). но вот в meminfo AnonPages: 268M -- вот теперь видно, что его по памяти пробивает. в т.ч. 265 MB конкретно у главного Java-процесса (как сообщает /proc/<pid>/statm). бред какой-то получается -- счётчики виртуальной памяти показывают разные значения, в зависимости от наличия RAM или swap. и ни один из показателей, ни одна тулза не смогла ответить на банальный вопрос -- сколько нужно RAM чтобы приложение хорошо работало.. я фигею.. кстати, как видишь, 3x не понадобилось. правда, я думаю оно может ещё отхватить мегабайт этак 50, но не 3x.. AM>> но интересно разобраться, каким образом Linux расчитывает объёмы AM>> памяти, EBB> Боюсь, для этого надо потусоваться в linux-mm... :) боюсь у меня там возникнет желание набить морду :) ) (With-best-regards '(Alex Mizrahi) :aka 'killer_storm) "I am everything you want and I am everything you need") --- ifmail v.2.15dev5.3 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/1619696f116e.html, оценка из 5, голосов 10
|