Управление оперативной памятью

Джента вообще умеет ее грамотно использовать ? или это я корявый ? железо после суточной работы необходимо ребутать, ибо сервера стоящие на нем начинают тормозить... при просмотре результата free видно что свободно 5-10 мегов оперативки(через сутки после включения)... джэента 2.6.11... оперативной памяти 1гб... мб енто из за того что при сборке ядра было указано памяти(помоему поддержка большого объема памяти) 4гб ?

Про больше 4Гб

Про больше 4Гб врятли. Это если я не ошибаюсь работает только в xeon'ах и то при количестви памяти больше 4Гб.

Посмотри top'ом,

Посмотри top'ом, какая/какие конкретно программы скушали оперативку, и ищи в них. Сама дженту кушает немного. Если у тебя есть ненужные опции в ядре - то зачем они там есть? ;-)

завтра как

завтра как будет доступ проверю топом, а щас пока остается годать... возможно что приложение(сервер) заглатывает все оперативку со временем, и почемуто(как я думаю) не освобождает ее когда выполнил какуюнить операцию... в итоге получается не освободив старое место - хават новое...

В

В простонародии как говориться жрет память. Это вообще такой распространенный баг. Его особенность в том , что его трудно выявить. Так что смотри то что запускаешь на предмет этого дела(восновном отзывы других пользователей и разработчиков.

Re: Управление оперативной памятью

Fake написал(а):
при просмотре результата free видно что свободно 5-10 мегов оперативки(через сутки после включения)

Это вполне нормально... наверняка там 60% дисковые буферы

Re: Управление оперативной памятью

v12aml написал(а):
Fake написал(а):
при просмотре результата free видно что свободно 5-10 мегов оперативки(через сутки после включения)

Это вполне нормально... наверняка там 60% дисковые буферы

но при ентом игровые сервера начинают лаговать :\

сеня доступ

сеня доступ наладился уже после ребута :\ а так возможно что серваки жрут оперативку из за того что запущены каждый в отдельном терминале(всего 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
А вот это цитата с фака ЛОРа

Цитата:
17.3 Как сделать, чтобы linux на ядре 2.6 не так интенсивно использовал файл подкачки (swap)?

Указать где-нибудь при загрузке (например, в /etc/rc.d/rc.local):

echo 20 > /proc/sys/vm/swappiness

Изменять параметр swappiness также можно через интерфейс /etc/sysctl

Ключ называется vm.swappiness

На машинах, выполняющих, например, кодирование видео, можно порекомендовать значение 0, поскольку во-первых, это более отвечает поведению ядра 2.4, а во-вторых позоляет избежать так называемой пробуксовки, когда постоянно активен процесс своппинга. Единственное исключение - машины с менее чем 128М памяти.

Есть еще ключ vm.vfs_cache_pressure, который рекомендуется повысить хотя бы до 1000

Тем, кому интересно, могут прочитать обсуждение на lkml: http://kerneltrap.org/node/view/3000

А также обсуждения патча Con Kolivas'а по регулированию этого параметра "на лету" http://kerneltrap.org/node/view/1044.

За дополнение спасибо annoynimous.

_________________
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
"Чайничек" :)

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".