Гость
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Linux Можно ли ограничить размер файлового кэша? / 25 сообщений из 32, страница 1 из 2
04.09.2015, 15:50
    #39043586
Ихтиандр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Можно ли ограничить размер файлового кэша в ядре 3.0?

Ситуация:
2ТБ памяти в системе.
Процессы потребляют 1.6ТБ
Все хорошо, пока не начинаем копировать большие файлы на другой сервер по сети.
Через некоторое время кэш подъедает оставшиеся 400ГБ и приложение начинает дико тормозить.
Тормозит оно даже после того, как копирование прервано.
Система подъедает свободную память почти до нуля, но отзывать страницы из кэша не торопится.
Причем речь не о грязных блоках.

Пока не сделали
echo 1 > /proc/sys/vm/drop_caches
не полегчало
...
Рейтинг: 0 / 0
04.09.2015, 17:03
    #39043663
miwaonline
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Ихтиандр,

У меня в закладках с давних пор есть вот это . Не помню, насколько оно работоспособно (не нравится мне идея установки ядра, которого нет в репозитории), но на локальной вики закладка почему-то отмечена "плюсиком".
...
Рейтинг: 0 / 0
04.09.2015, 17:11
    #39043671
Мутаген
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
cgroups может, но был ли он в винтажном релизе 3.0 я не помню
...
Рейтинг: 0 / 0
04.09.2015, 17:42
    #39043698
Ихтиандр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Спасибо.
По ссылкам вышел вот на это
Похоже swappiness и vfs_cache_pressure - то что нужно крутить как раз.
...
Рейтинг: 0 / 0
04.09.2015, 17:44
    #39043700
Ихтиандр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Мутагенcgroups может, но был ли он в винтажном релизе 3.0 я не помню
на мой взгляд, это извращение
Я то хотел чтобы менеджер памяти в принципе работал иначе.
Зачем мне половина памяти в буферах и своп аут процессов при этом?
...
Рейтинг: 0 / 0
04.09.2015, 20:43
    #39043773
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Ихтиандр, зато ядру можно "посоветовать" не использовать кеш в помощью вызова fadvise.
вот такую штуку я находил и использовал нормально : https://code.google.com/p/pagecache-mangagement/source/browse/trunk/pagecache-management.txt?r=2

Кроме того, были еще всякие проекты по сходному принципу, которые вообще передают флажки O_DIRECT и кеш отключается совсем.
При этом важно еще чтобы сама скорость копирования не превосходила возможности дисков, чтобы оставался резерв для работы.
Поэтому в rsync сделали опцию --bwlimit.
А в cp и tar нет . Есть в специальном древнем tar от oracle https://oss.oracle.com/projects/coreutils/files/EL3/src/
...
Рейтинг: 0 / 0
04.09.2015, 21:50
    #39043785
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
И, кстати, самый простой способ - просто не спешить чтобы процессы успевали память пометить как нужную.
То есть, просто копировать данные с помощью rsync --bwlimit.
...
Рейтинг: 0 / 0
06.09.2015, 11:55
    #39044217
Ихтиандр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
netwindИ, кстати, самый простой способ - просто не спешить чтобы процессы успевали память пометить как нужную.
То есть, просто копировать данные с помощью rsync --bwlimit.
Не очень понимаю, как bwlimit помешает ядру прибрать всю неиспользуемую память под кэш чтения.
...
Рейтинг: 0 / 0
06.09.2015, 12:33
    #39044229
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Ихтиандр, если обсуждаемый кеш реально представляет из себя кеш - он будет в это время еще немного читаться программами и повышать шансы своих страниц остаться в памяти в сравнении со страницами мусора, который используется один раз.
...
Рейтинг: 0 / 0
06.09.2015, 12:36
    #39044232
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
ИхтиандрНе очень понимаю, как bwlimit помешает ядру прибрать всю неиспользуемую память под кэш чтения.
Если подойти формально - никак.
Но неиспользуемой памяти в линуксе вообще почти не бывает.
Раз у вас тормозит, значит используется память занятая под файловой кеш и речь именно о ней.
...
Рейтинг: 0 / 0
07.09.2015, 09:38
    #39044603
Ихтиандр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Я же описал ситуацию: система набрала в кэш, файлы считаны один раз, операция завершена уже около часа, но память не освобождается.
Короче это должно помочь. 18110413
...
Рейтинг: 0 / 0
07.09.2015, 11:09
    #39044698
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
ИхтиандрЯ же описал ситуацию: система набрала в кэш, файлы считаны один раз, операция завершена уже около часа, но память не освобождается.
Короче это должно помочь. 18110413

Для начала, вы понимаете, что память занятая под кеш файлов вообще в линуксе никогда не освобождается ? показатели "free" имеют другой смысл в сравнении с windows.
Теперь мне кажется тут все изначально напутано.
Действительно ли 1.6 ТБ памяти занимают процессы ? Это что за приложение ?
Есть графики или хотя бы шапка от hop ?

Если там ничего активного нет, то память приложения вытесняется и обратно в память попадет нескоро. Так что может это приложение надо настроить ?

Мое решение вы не нашли, потому что выдумали себе найти какие-то волшебные sysctl в ядре.
Но как ядро узнает о том, что эти конкретные файлы не нужны в кеше? Никак.
(Есть определенные фокусы, которые определяют линейное считывание файла и предполагают, что оно будет однократным, но сработают ли они хорошо - не гарантировано )
Зато если приложение подаст сигнал, то есть сделает fadvise - это сработает точно.
...
Рейтинг: 0 / 0
07.09.2015, 11:18
    #39044705
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
netwindпамять занятая под кеш файлов вообще в линуксе никогда не освобождаетсяНе понял интонацию этого фрагмента. Это шутка или сарказм?
...
Рейтинг: 0 / 0
07.09.2015, 11:31
    #39044717
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
miksoftnetwindпамять занятая под кеш файлов вообще в линуксе никогда не освобождаетсяНе понял интонацию этого фрагмента. Это шутка или сарказм?
Имеется ввиду, что буфера чтения вообще никогда не помечаются как полностью свободные. Показатель free обратно не уменьшается никогда ( кроме как если сделать umount). Ждать этого нет смысла.
...
Рейтинг: 0 / 0
07.09.2015, 11:56
    #39044755
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
netwindmiksoftпропущено...
Не понял интонацию этого фрагмента. Это шутка или сарказм?
Имеется ввиду, что буфера чтения вообще никогда не помечаются как полностью свободные. Показатель free обратно не уменьшается никогда ( кроме как если сделать umount). Ждать этого нет смысла.Тогда чем объяснить уменьшение этих буферов на данном суточном графике?
...
Рейтинг: 0 / 0
07.09.2015, 12:14
    #39044789
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
miksoft, предположу, что в 3 ночи завершается бекап и какие-то временные файлы удаляются.
У меня при активно используемом кеше free стремится к нулю. На не слишком загруженных системах графики похожи на приведенный.
...
Рейтинг: 0 / 0
07.09.2015, 12:15
    #39044791
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
netwindНо как ядро узнает о том, что эти конкретные файлы не нужны в кеше? Никак.Например, когда эти файлы удалили/обрезали и никто не держит их открытыми?
...
Рейтинг: 0 / 0
07.09.2015, 12:18
    #39044794
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
netwindmiksoft, предположу, что в 3 ночи завершается бекап и какие-то временные файлы удаляются.Ну, значит, "никогда" не так уж и никогда?
...
Рейтинг: 0 / 0
07.09.2015, 12:21
    #39044800
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
miksoft, та я в скобочках написал про umount. Можно удаление считать тем же самым случаем.
По крайней мере, ТС точно не захочет удалять файлы ради очистки кеша.
...
Рейтинг: 0 / 0
07.09.2015, 16:33
    #39045136
Ихтиандр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
я делаю проще
echo 3 >/proc/sys/vm/drop_caches
То что free не растет - вполне естественно для *NIX систем, однако странно не это, а то, что в условиях дефицита памяти буфера не освобождаются.
Обидно за свое решение?
Скажите мне как оно будет работать если система в принципе не чистит буфера без пинка от души?
Какая разница, ограничиваю я скорость передачи данных, читай наполнения кэша, или нет, если и по прошествии часа приложение испытывает затруднения при запросе памяти.

Как ядро узнает что ему нужно а что нет?
Вот именно про рычаги, заставляющие принимать подобные решения я и спрашивал.
Можно заставить ядро делать выбор либо в пользу своп аут на диск памяти процессов либо в пользу жертвования the most rarely used страниц в буферах файлового кэша.
Можно заставить ядро начинать бить тревогу не при 1ГБ свободной памяти для начала процесса компактинга фрагментированной памяти, а при раз в 10 большем количестве.
Можно обозначить разумный таргет для файловых буферов, до которого в случае дефицита кэш будет схлопнут.


Какое приложение? С трудом верится в объем?
SAP HANA.
...
Рейтинг: 0 / 0
07.09.2015, 16:39
    #39045144
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Ихтиандр,

Посмотрите https://www.kernel.org/doc/Documentation/sysctl/vm.txt
Может, чего и вычитаете полезного.
...
Рейтинг: 0 / 0
07.09.2015, 16:44
    #39045150
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Ихтиандр..
То что free не растет - вполне естественно для *NIX систем, однако странно не это, а то, что в условиях дефицита памяти буфера не освобождаются
..
SAP HANA.
А, понятно. Это такая фигня, которая съедает все данные , держит их в памяти чтобы потом никогда их не использовать (иначе они бы в своп не улетали просто так). Ядру недостаточно такого сигнала. Оно не считает, что есть дефицит.

Хорошо, если вам помогает. Но в более традиционных применениях проблема намного острее стоит. Если сбросить весь кеш, это повлияет и на скорость работы приложений очень сильно. Поэтому выгоднее изначально не пихать бесполезные файлы в файловый кеш.
...
Рейтинг: 0 / 0
07.09.2015, 16:50
    #39045156
Ихтиандр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
какой же ты упорный, блин

я не стану никого убеждать в том, что иногда дефолтное поведение системы необходимо менять, потому что универсальных настроек под любую конфигурацию и любое приложение не существует.
Можешь сказать под какую систему десктоп/файлсервер/сервер БД/сервер приложений и под какую аппаратную конфигурацию заточены дефолт тюнаблс в линуксе?
...
Рейтинг: 0 / 0
07.09.2015, 16:52
    #39045160
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Ихтиандр, кто больше всех ноет в списках рассылки - под того и затачивают. То есть, под mysql, php и firefox.
разве не очевидно ?
...
Рейтинг: 0 / 0
07.09.2015, 16:55
    #39045164
netwind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Linux Можно ли ограничить размер файлового кэша?
Кстати, какое же значение в этой HANA выбрали для ключа vm.swappiness ?
Там же сразу готовые опломбированные коробки привозят ? А че туда лезть то вообще ?
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Linux Можно ли ограничить размер файлового кэша? / 25 сообщений из 32, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]