Налаштування простоти - це зміна способу, яким Linux обчислює переваги / недоліки для заміни у певному сценарії. Висока заміщення не призведе до того, що система заміняється, коли вона не потребує, а низька заміщення, якщо ви не відключите заміну повністю, не завадить вашій системі заміни, коли це абсолютно необхідно.
Замітка за замовчуванням 60 або більше - це дуже хороший компроміс, що забезпечує хорошу продуктивність вашої системи, гарантуючи, що вона не надто намагається виділити кеш-пам’ять, поки не використовується невиділена пам'ять програми.
Пам’ятайте, що якщо у вас є достатня кількість оперативної пам’яті для всіх ваших процесів плюс кеш, що зазвичай має бути, якщо у вас є достатня кількість фізичної оперативної пам’яті, заміна не повинна бути проблемою для вас. Кращим способом виправити проблеми занадто великої заміни є зменшення використання оперативної пам’яті процесами та / або збільшення фізичної оперативної пам’яті. Зменшення задимлення матиме негативний ефект, якщо те, що вам справді потрібно, - це більше оперативної пам’яті.
Чому більшість людей рекомендують зменшити скупость до 10-20?
Оскільки більшість вважає, що заміна = погана, і якщо ви не зменшите свопп, система буде міняти місцями, коли цього насправді не потрібно. Жодне з них не є правдою. Люди пов'язують обмін із часом, коли їхня система забуває - однак, це в основному відбувається обмін, тому що система забивається, а не навпаки. Це правда, що є певні періоди, коли за заміну може бути помітна покарання за продуктивність, але система вже врахувала це, щоб прийняти рішення про обмін, і вирішила, що не робити цього, матиме більше загальне покарання в продуктивності або стабільності системи, яка може пізніше стають помітними. В цілому параметри за замовчуванням повинні призвести до найкращої загальної продуктивності та надійності. Я рекомендую залишити його за замовчуванням.
...
Після того, як ви використали достатньо пам’яті, що не вистачає для плавно кешованого кешу, Linux може переділити деяку кількість невикористаної пам’яті програми з оперативної пам’яті для заміни.
Однак це не робиться відповідно до певного обрізу. Це не так, як ви досягаєте певного відсотка розподілу, тоді Linux починає мінятися. Він має досить «нечіткий» алгоритм. Це враховує багато речей, які найкраще можна охарактеризувати «скільки тиску для розподілу пам’яті». Якщо є багато «тиску» для виділення нової пам’яті, то це збільшить шанси на те, що деякі будуть помінятися, щоб звільнити більше місця. Якщо "тиск" буде меншим, то це знизить ці шанси.
У вашій системі встановлено параметр "заміщення", який допоможе вам налаштувати, як обчислюється цей "тиск". Зазвичай це не рекомендується змінювати, і я, звичайно, ніколи не рекомендую вам це змінювати. Обмін загалом є дуже хорошою справою - будь-які випадкові покарання за ефективність повинні компенсуватися збільшенням загальної чутливості та стабільності системи для широкого кола завдань. Якщо ви зменшите свобідність, ви дозволяєте обсягу пам’яті кешу скоротитися трохи більше, ніж це було б інакше, навіть коли це дійсно може бути корисним. Тому ви ризикуєте загальмувати ваш комп'ютер загалом, оскільки кешу менше, в той час як пам'ять займає додатки, які навіть не використовують його. Чи це досить хороший компроміс для вирішення будь-якої конкретної проблеми, пов'язаної зі свопом.
Що відбувається, коли система замикається та сильно змінюється?
Багато часу люди будуть дивитись на свою систему, яка сильно молотить диск і використовує багато місця для обміну і звинувачує в цьому. Це неправильний підхід. Якщо заміна коли-небудь досягає цієї крайності, це означає, що ваша система надзвичайно мало пам’яті, а заміна - це єдине, що не дає їй випадкових збоїв або вбитих процесів. Без заміни в цій ситуації процеси будуть руйнуватися і загинути. Обмін є симптомом більш глибокої проблеми. У системі з достатньою кількістю пам’яті для всіх своїх завдань заміни лише гарантують, що пам’ять використовується ефективно, переносячи пам'ять у кеш на спокійні процеси там, де вона бачить, що варто. У системі, де свопінг невблаганно обмолочує диск, це не провина.
Вибираючи, що потрібно замінити на диск, система намагається вибрати пам'ять, яка насправді не використовується - читати чи писати з неї. Він має досить простий алгоритм для обчислення цього, який вибирає більшу частину часу.
...
Але як своп може пришвидшити мою систему? Чи не поміняєш повільні речі?
Акт передачі даних з оперативної пам’яті в swap - це повільна операція, але вона приймається лише тоді, коли ядро впевнене, що загальна вигода переважає це. Наприклад, якщо пам’ять вашої програми зросла до того, що у вас майже не залишилось кешу, і ваш ввід / вивід дуже неефективний через це, ви можете фактично отримати набагато більшу швидкість зі своєї системи, звільнивши трохи пам'яті, навіть після первинних витрат на обмін даними, щоб звільнити їх.