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

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

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

У меня в закладках с давних пор есть вот это . Не помню, насколько оно работоспособно (не нравится мне идея установки ядра, которого нет в репозитории), но на локальной вики закладка почему-то отмечена "плюсиком".
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39043671
Мутаген
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cgroups может, но был ли он в винтажном релизе 3.0 я не помню
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39043698
Ихтиандр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.
По ссылкам вышел вот на это
Похоже swappiness и vfs_cache_pressure - то что нужно крутить как раз.
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39043700
Ихтиандр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мутагенcgroups может, но был ли он в винтажном релизе 3.0 я не помню
на мой взгляд, это извращение
Я то хотел чтобы менеджер памяти в принципе работал иначе.
Зачем мне половина памяти в буферах и своп аут процессов при этом?
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39043773
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ихтиандр, зато ядру можно "посоветовать" не использовать кеш в помощью вызова 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
Linux Можно ли ограничить размер файлового кэша?
    #39043785
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И, кстати, самый простой способ - просто не спешить чтобы процессы успевали память пометить как нужную.
То есть, просто копировать данные с помощью rsync --bwlimit.
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39044217
Ихтиандр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindИ, кстати, самый простой способ - просто не спешить чтобы процессы успевали память пометить как нужную.
То есть, просто копировать данные с помощью rsync --bwlimit.
Не очень понимаю, как bwlimit помешает ядру прибрать всю неиспользуемую память под кэш чтения.
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39044229
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ихтиандр, если обсуждаемый кеш реально представляет из себя кеш - он будет в это время еще немного читаться программами и повышать шансы своих страниц остаться в памяти в сравнении со страницами мусора, который используется один раз.
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39044232
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИхтиандрНе очень понимаю, как bwlimit помешает ядру прибрать всю неиспользуемую память под кэш чтения.
Если подойти формально - никак.
Но неиспользуемой памяти в линуксе вообще почти не бывает.
Раз у вас тормозит, значит используется память занятая под файловой кеш и речь именно о ней.
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39044603
Ихтиандр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я же описал ситуацию: система набрала в кэш, файлы считаны один раз, операция завершена уже около часа, но память не освобождается.
Короче это должно помочь. 18110413
...
Рейтинг: 0 / 0
Linux Можно ли ограничить размер файлового кэша?
    #39044698
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИхтиандрЯ же описал ситуацию: система набрала в кэш, файлы считаны один раз, операция завершена уже около часа, но память не освобождается.
Короче это должно помочь. 18110413

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

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

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

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


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

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

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

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


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