Управление оперативной памятью
Гость 8 октября, 2005 - 18:11
Джента вообще умеет ее грамотно использовать ? или это я корявый ? железо после суточной работы необходимо ребутать, ибо сервера стоящие на нем начинают тормозить... при просмотре результата free видно что свободно 5-10 мегов оперативки(через сутки после включения)... джэента 2.6.11... оперативной памяти 1гб... мб енто из за того что при сборке ядра было указано памяти(помоему поддержка большого объема памяти) 4гб ?
»
- Для комментирования войдите или зарегистрируйтесь
Про больше 4Гб
Про больше 4Гб врятли. Это если я не ошибаюсь работает только в xeon'ах и то при количестви памяти больше 4Гб.
Посмотри top'ом,
Посмотри top'ом, какая/какие конкретно программы скушали оперативку, и ищи в них. Сама дженту кушает немного. Если у тебя есть ненужные опции в ядре - то зачем они там есть? ;-)
завтра как
завтра как будет доступ проверю топом, а щас пока остается годать... возможно что приложение(сервер) заглатывает все оперативку со временем, и почемуто(как я думаю) не освобождает ее когда выполнил какуюнить операцию... в итоге получается не освободив старое место - хават новое...
В
В простонародии как говориться жрет память. Это вообще такой распространенный баг. Его особенность в том , что его трудно выявить. Так что смотри то что запускаешь на предмет этого дела(восновном отзывы других пользователей и разработчиков.
Re: Управление оперативной памятью
Это вполне нормально... наверняка там 60% дисковые буферы
Re: Управление оперативной памятью
но при ентом игровые сервера начинают лаговать :\
сеня доступ
сеня доступ наладился уже после ребута :\ а так возможно что серваки жрут оперативку из за того что запущены каждый в отдельном терминале(всего 2 сервака) и все что на них происходит выводится на экран в терминале? если из за ентого может появлятся данное явление то как избавтся от вывода всего ентого содержимого на экран ?
Это врятли.
Это врятли. Буфер консоли ограничен по объему. Но если что, то
start_server param1 param2 > /dev/null
попробуй # top -b -n
попробуй
# top -b -n 1 | less
посмотри динамику (т.е. как процессы изменяются со временем)... У меня иногда такое случается, к примеру, выключил wine каким-нить нестандартным пособом - в оперативе он висит, а так его не видно. Жестко, но иногда приходится kill'ом пользоваться :(
screen
избавтся от вывода всего ентого содержимого на экран можно при помощи чудненькой утилитки screen
Ну если
Ну если избавиться, то проще
1> /dev/null 2> /dev/null
мистика...
сегодня заглянул в топ после суток работы сервака... на верху пишет что занято 880 метров из 970(т.е. фактичеси 90%), тут же в топе посчитал все приложения(от всех пользователей) и суммарно получилось 30-32%... такова я еще ни разу в жизни не видел... куда деваются еще 60% оперативы??? в топе(вверху где показывается память как free) енти 60% они заняты и используются, а так, ни одно приложение не использует более 8%(все вместе 30%)
мде...
мне сказали, что скорее всего большая часть памяти забивается дисковыми кешами... дисковый кеш - енто такая сильная необходимость ? можно его отключить или зарезервировать оперативку под серваки ?
Просто система
Просто система старается использовать жесткий диск по минимому и вместо того, чтобы писать на него, запоминает это в оперативку, вдруг понадобится. Ну и читает заранее, вдруг кто-то файл запросит, а он уже под рукой будет. По идее, если оперативки не хватает система просто сбрасывает чать кэша (то, что надо пишет на диск, остальное просто забывает) и выделяет эту память приложениям.
Зачем?
Зачем? ты хочешь тормознуть свою систему?
_________________
GNU/Wonderland -- GNU/Страна чудес, страна, в которой вы часто бываете, но, в которую, что примечательно, не надо оформлять визу.
RE:мде...
Раньше я использовал SUSE под reiser fs, щас Gentoo и ext3. Заметил такую штуку: в suse под кэш использовалось не меньше 40% доже когда оперативы нехватало, и комп начинал свопить. В Gentoo кэш спокойно уменьшается до 10-5%. С чем это связано я не знаю, могу только предположить что с настройками ядра, или из за того что используются разные файловые системы.
у меня PIII reiserfs &
у меня PIII reiserfs & 512 метров оперативы. Своп использовался только когда компилился опенофис и в Enlightenment файловый менеджер делал чудовищные утечки памяти
lsmod
сделай lsmod. посмотри. может какой нить модуль ядра в процессе работы память под себя подминает.
Народ а как в
Народ а как в Гентушке зделать что бы система хавала больше свопа а не оперативы?
_________________
ПЕЙ ПИВО ВСЕГДА И ВЕЗДЕ.
Никак. Зачем
Никак. Зачем оно тебе нужно? Это ведь не Windows, который даже при наличии свободной оперативки начинает свопить.
Или ты хочешь намеренно тормознуть систему? =/
+1
но вот стратегию его(swap) использования можно поменять, тока где - непомню
Как это --
Как это -- никак?
Очень даже как.
статья на ru.gentoo-wiki.com
А вот это цитата с фака ЛОРа
_________________
AMD Athlon XP, 1800 MHz (13.5 x 133) 2200+
Gigabyte GA-7VA (VIA VT8377 Apollo KT400; Realtek ALC650 @ VIA AC'97 Enhanced Audio Controller; 256Mb(PC2700 DDR SDRAM))
NVIDIA Geforce4 MX 440 AGP8X NV18 Chip Rev A2
"Чайничек" :)
...
...
Значить так
Значить так :)
Можно править стратегию использования swap раздела с помощью /proc/sys/vm/swappiness. Делается все просто, например: echo 60 > /proc/sys/vm/swappiness. Число указывает как интенсивно будет использоваться swap раздел. При 0 все неактивные страницы будут всегда висеть в памяти, при 100 - будут сразу сливаться в swap.
Кстати, помимо дискового кеша, память может отъедать буфер динамических библиотек. Сбросить этот буфер (вместе с дисковым кешем) можно так:
1. Сохраняем дисковый кеш
# sync
2. Сбрасываем буфер
# echo 1 > /proc/sys/vm/drop_caches
Ну и под занавес статейка: http://gentoo-wiki.com/FAQ_Linux_Memory_Management
а как сделать
а как сделать что-бы эти буферы чаще сбрасывались?
Поставить в
Поставить в cron
_________________
AMD Athlon XP, 1800 MHz (13.5 x 133) 2200+
Gigabyte GA-7VA (VIA VT8377 Apollo KT400; Realtek ALC650 @ VIA AC'97 Enhanced Audio Controller; 256Mb(PC2700 DDR SDRAM))
NVIDIA Geforce4 MX 440 AGP8X NV18 Chip Rev A2
"Чайничек" :)