Рейтинг:0

Как я могу предотвратить обмен Ubuntu при наличии достаточной физической памяти?

флаг us

У меня есть настольная система Ubuntu 20.04 с 16 ГБ физической памяти и 8 ГБ подкачки.

После некоторого времени безотказной работы и довольно интенсивного использования я заметил, что пространство подкачки было почти полностью использовано, а физическая память была чуть ниже 50%. В соответствии с этим я заметил низкую производительность при возврате к приложениям, которые долгое время находились в фоновом режиме, сопровождаемом дребезгом диска — очевидно, система была занята чтением страниц памяти из подкачки.

Затем я попытался вернуть все обратно в физическую память, запустив подкачка -а; свопон -а (что ненадолго увеличило использование памяти чуть выше 90%). Однако, как только подкачка снова была включена, я заметил, что система сразу же начала перемещать страницы обратно в подкачку, пока использование подкачки не достигло 60%.

Это кажется мне неэффективным, и я бы предпочел, чтобы данные хранились в памяти, пока есть запасы, чтобы избежать накладных расходов на чтение страниц из подкачки, когда они мне снова понадобятся.

Как я могу повлиять на это поведение? Я видел упоминание параметра swappiness, но, насколько я понимаю, он просто дает системе порядок, в котором страницы должны быть вытеснены из физической памяти, а не то, как скоро начинать вытеснение страниц.

флаг in
[Этот ответ] (https://askubuntu.com/a/1317009/1222991) может ответить на некоторые ваши вопросы о swappiness
флаг cn
и прочитайте это: https://askubuntu.com/a/1379/15811 и замечание: «То, что своп выделен, не означает, что он« используется ». В то время как программы, такие как системный монитор и верхняя часть, покажут некоторые из ваше пространство подкачки выделено, что не означает, что система активно выполняет подкачку.
флаг us
Поскольку у вас много памяти, вы можете использовать zram вместо swap. Вы больше не будете испытывать медлительность.
Рейтинг:1
флаг cn

То есть Linux экономит память. В какой-то момент у вас высокий уровень использования памяти. Таким образом, Linux подкачивает память на диск. Когда позже у вас будет меньше требований к памяти, Linux оставит подкачку на диске, поэтому память будет доступна для дискового кеша и для всего, что вы делаете или планируете делать. Только когда вам понадобится память, находящаяся в пространстве подкачки, linux извлечет ее из подкачки. Не ранее. Так как вам это все равно не нужно.

Снижение обмен эффективно уменьшит склонность ОС к подкачке страниц на диск и увеличит склонность ОС к кэшированию дисковых файлов в память.

это просто дает системе порядок, в котором страницы должны быть вытеснены из физической памяти, а не то, как скоро начинать вытеснение страниц

Не совсем правильно, на мой взгляд. Управление памятью сложный в реальности]. Это определение из документации Linux источник:

«Этот элемент управления используется для определения того, насколько агрессивно (sic) ядро ​​будет обмениваться страницами памяти.Более высокие значения увеличивают агрессивность, более низкие значения уменьшают объем свопа. Значение 0 указывает ядру не инициировать подкачку до тех пор, пока количество свободных страниц и страниц с файловой резервной копией не станет меньше верхней отметки в зоне.

Вы действительно можете уменьшить подкачку: это уменьшит склонность системы к выгрузке выгружаемой памяти. В свою очередь, на вашем жестком диске будет больше работы по физической записи файлов, потому что они будут кэшироваться меньше. Каково чистое влияние на нагрузку на диск, зависит от фактического использования.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.