[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: почему ядро не сбрасывает кэш?



On 12/2/15, Aleksandr Sytar <sytar.alex@gmail.com> wrote:

>> Это вы к примеру сказали, или из сообщения определили (order:1,
>> mode:0x20)?
> (2^order)*page_size - количество нехвативших страниц

В логах 71 запись, из них 39 принадлежат процессц swapper, pid 0, 1 -
kswapd0, ещё 26 яве, остальное прочим, и всем не хватало 1-ого буфера
в 8 кб. И это на машине с 512 ГБ ОЗУ и 2 ГБ свопа.

>> И при этом 250 ГБ заняты под кэш, почему бы не почистить его?
> Почистить можно то что свободно, то что занято можно выдавить в свап, но не
> сразу, а только через dirty_background_ratio и подобным ручкам.

Это тянулось явно побольше 10 сек (dirty_background_ratio), при этом,
после чистки руками, кэш до 200 ГБ около часа, т.е. кандидатов на
выбросить оттуда было более чем достаточно.


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

Приложение уже ограничено по памяти, т.к. ява.

Учитывая соседнюю тему, где сброс кэша помогает ускорить apt-get,
несмотря на наличие 12 ГБ свободной памяти, есть подозрение, что в
Линуксе работа с памятью поломана.

Reply to: