При копировании больших файлов (4-5 гиг) память системы забиватеся под завязку файловым кэшем (cache filesystem), или, к примеру, при создании образа dvd, свободная память так же резко уменьшается. Работать становится не возможно.
В процессе копирования:
vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 348 97348 708 750232 0 0 3272 3157 1222 1685 7 4 76 13
11
обратить внимание — кэш 750232 МБ (75%).
Перебрал все ioshed (noop, anticipatory, deadline, cfq), они по разному нагружают систему, но проблему не решают (память забита, проц загружен ядром на 100%). Переключение между задачами ужасно медлеено..
Перебрал различные параметры в /proc/sys/vm/, разобрался только с параметрами буферов (dirty_background_ratio, dirty_expire_centisecs, dirty_ratio, dirty_writeback_centisecs), теперь знаю, как управлять демоном pdflush и настраивать управление буферами. С помошью min_free_kbytes увеличил обьем минимальной свободной памяти (зачем?)
Но как управлять параметрами файлового кеша, я не нашел. В /proc/sys/vm/ есть еще параметр vfs_cache_pressure, его описание не очень то и понятно, и его изменения его значения не повлияли на размер кэша системы.
Вопрос:
Как можно настроить работу файлового кеша?
И как сделать чтобы при копировании "больших файлов" (образ dvd, к примеру) cache filesystem не рос, и память не забивалась?
Где "внятно" описана работа кэша?
Что можете сказать про патчи ядра от Con Kolivas?
ps: пусть кеш забиватся когда работаешь с маленькими файлами, хоть под завязку..
ps/2: искал, не нашел — (google,fido,news,жж,ru,en,de,kernel-doc).
... << RSDN@Home 1.1.4 stable rev. 510>>
Re: Где настройки filesystem cache? (кроспост из жж)
Здравствуйте, mr_jek, Вы писали:
_>Соотношение использование кэша/свопа регулируется _>/proc/sys/vm/swappiness
Значит ли это, что если я поставлю swappiness=100, то кэш файлов будет кидаться в своп?
(злой я какой-то, сегодня)..
как я понял swappiness — это агрессивность своппинга, и на кэш это мало влияет..
и коротко — не помогает:
swappiness=0 — кэш такой же большой... т.е. ничего не изменилось
swappiness=100 — при загрузки стало больше тормозить приложеня, так как их память кидалась в стек... а кэш осталься большим...
_>я думаю лучшее решение будет поставить последнее ядро 2.6.16,
т.е. на этом ядре(2.6.16.20) как я понял, кэш настраивается?
а как с ядром 2.4 происходит? кака ведет себя оно при копировании больших объемов? тоже забивает память кэшем?
(я еще не проверял)
_>/usr/src/linux/Documentation/filesystems/proc.txt
ага читал, вот про буферы там и про прочитал... и вот про кэш нет, не нашел там...
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[2]: Где настройки filesystem cache? (кроспост из жж)
Здравствуйте, Petrovich_Alex, Вы писали:
P_A>Здравствуйте, mr_jek, Вы писали:
_>>Соотношение использование кэша/свопа регулируется _>>/proc/sys/vm/swappiness
P_A>ага тут я читаю длинный флем на kerneltrap.org за 2004 год, так говорят что кэш может кидаться в своп....
P_A>короче я еще больще запутался..
Добрый день, все таки как решилась проблемма ?!!!! , я в данный момент на теже грабли наступил.
Re[4]: Где настройки filesystem cache? (кроспост из жж)
Здравствуйте, aqt, Вы писали:
aqt>Здравствуйте, Petrovich_Alex, Вы писали:
P_A>>Здравствуйте, mr_jek, Вы писали:
_>>>Соотношение использование кэша/свопа регулируется _>>>/proc/sys/vm/swappiness
P_A>>ага тут я читаю длинный флем на kerneltrap.org за 2004 год, так говорят что кэш может кидаться в своп....
P_A>>короче я еще больще запутался..
aqt>Добрый день, все таки как решилась проблемма ?!!!! , я в данный момент на теже грабли наступил.
тут какое дело — swappiness влияет на работу кеша — на интенсивность его использования
и выставляя боьшой swappiness не есть гуд
как решить — шас не скажу — тк на работе — а тут RH 3.0 — те не могу поглядеть sysctl -a для 2.6
вечером если не забуду — отпишу
Re[5]: Где настройки filesystem cache? (кроспост из жж)
Здравствуйте, Adekameron, Вы писали:
A>Здравствуйте, aqt, Вы писали:
aqt>>Здравствуйте, Petrovich_Alex, Вы писали:
P_A>>>Здравствуйте, mr_jek, Вы писали:
_>>>>Соотношение использование кэша/свопа регулируется _>>>>/proc/sys/vm/swappiness
P_A>>>ага тут я читаю длинный флем на kerneltrap.org за 2004 год, так говорят что кэш может кидаться в своп....
P_A>>>короче я еще больще запутался..
aqt>>Добрый день, все таки как решилась проблемма ?!!!! , я в данный момент на теже грабли наступил. A>тут какое дело — swappiness влияет на работу кеша — на интенсивность его использования A>и выставляя боьшой swappiness не есть гуд A>как решить — шас не скажу — тк на работе — а тут RH 3.0 — те не могу поглядеть sysctl -a для 2.6 A>вечером если не забуду — отпишу
Огромное спасибо, а то я тут уже сижу 3 сутки в отладке драйвера с поиском почему память тю-тю...
Re[6]: Где настройки filesystem cache? (кроспост из жж)
A>>тут какое дело — swappiness влияет на работу кеша — на интенсивность его использования A>>и выставляя боьшой swappiness не есть гуд A>>как решить — шас не скажу — тк на работе — а тут RH 3.0 — те не могу поглядеть sysctl -a для 2.6 A>>вечером если не забуду — отпишу
aqt>Огромное спасибо, а то я тут уже сижу 3 сутки в отладке драйвера с поиском почему память тю-тю...
в общем нужно поиграться с vm.vfs_cache_pressure выставить побольше и поглядеть например сделать его 1000
а вообше настройка использования памяти — оч тонкая и не простая весчь