У меня есть настольная система Ubuntu 20.04 с 16 ГБ физической памяти и 8 ГБ подкачки.
После некоторого времени безотказной работы и довольно интенсивного использования я заметил, что пространство подкачки было почти полностью использовано, а физическая память была чуть ниже 50%. В соответствии с этим я заметил низкую производительность при возврате к приложениям, которые долгое время находились в фоновом режиме, сопровождаемом дребезгом диска — очевидно, система была занята чтением страниц памяти из подкачки.
Затем я попытался вернуть все обратно в физическую память, запустив подкачка -а; свопон -а
(что ненадолго увеличило использование памяти чуть выше 90%). Однако, как только подкачка снова была включена, я заметил, что система сразу же начала перемещать страницы обратно в подкачку, пока использование подкачки не достигло 60%.
Это кажется мне неэффективным, и я бы предпочел, чтобы данные хранились в памяти, пока есть запасы, чтобы избежать накладных расходов на чтение страниц из подкачки, когда они мне снова понадобятся.
Как я могу повлиять на это поведение? Я видел упоминание параметра swappiness, но, насколько я понимаю, он просто дает системе порядок, в котором страницы должны быть вытеснены из физической памяти, а не то, как скоро начинать вытеснение страниц.