Чому розмір розділу swap повинен бути подвійним розміру оперативної пам’яті?


9

Чому рекомендується розмір розділу swap бути вдвічі більшим за розмір ОЗУ?

Зокрема, навіщо мені потрібно двічі зберігати дані, що зберігаються в оперативній пам'яті ??

Відповіді:


10

Розміняти розділ, що має подвійний об'єм пам'яті, є лише загальним правилом, а не жорстким і швидким правилом. Вам потрібно буде мінімум 1 X розмір пам’яті, якщо ви призупинили диск (сплячий режим) і додали достатньо запасного місця для використання «заміненої» пам’яті, що виходить за межі фізичної. Звідси рекомендовані 1,5 - 2 рази.

Я думаю, що це також залежить від характеру використання вашої програми та розміру вашої фізичної пам'яті тощо. Якщо у вас є щось, що перевищує 2 Гб оперативної пам’яті та використовуєте додатки, що не потребують пам’яті, більшу частину часу вам може не знадобитися розділ підкачки взагалі, ні великий все одно.

Маючи великий файл підкачки та повільний жорсткий диск, це теж може бути покаранням для вашої системи.

Ось кілька корисних читань:

Ubuntu SwapFAQ
SUperuser - розмір розділів для заміни на 4 Гб оперативної пам’яті
.


1
Повільно чи ні, завжди краще проводити підкачку на всякий випадок, навіть якщо вона вам не потрібна, ніж ризикувати втратою оперативної пам’яті, якщо немає підкачки.
Дон

@Don, так що я погоджуюсь, що безпечніше мати своп-розділ. :)
okw

2

Це старе правило, яке, на мою думку, вже не має сенсу, тому що сьогодні це може прирівнюватися до абсурдної кількості свопів щодо швидкості зберігання.

Мінімальна кількість замінів, які ви повинні мати, - це ваше типове стаціонарне використання. (Це сума, досягнута після тривалого часу роботи, коли більша частина наявної пам’яті складається з кешу сторінок. Захист заміни - це добре прочитання.)

Але я тут, щоб сказати вам, що є максимум ... якщо чуйність взагалі викликає занепокоєння.

Сценарій настільного комп’ютера: Зазвичай, коли у вас не вистачає пам'яті (наприклад, коли випадково встановлено вилку бомби на зразок make -j), це таке: по-перше, ви помічаєте трохи млявий користувальницький інтерфейс, а це означає, що у вас є приблизно хвилина, щоб убити кривдника процес, перш ніж вказівник миші стане невідповідним. Але це лише початок! Ви бачите, то , що комп'ютер буде сидіти там з його SSD LED горить постійно, вспенивание через іншу частину його простору підкачки, в протягом декількох десятків хвилин до декількох годин, в той час як ви не можете робити нічого ( за винятком , може бути , потягнувши за вилку). У цей момент ви будете клястись, що хотіли, щоб вбивця OOM трохи пізніше пішов , замість того, щоб витрачати день.

Тому смішна кількість місця для обміну, яким ви зазвичай не користуєтесь, насправді погана з точки зору доступності - вона просто затримує неминуче у випадку катастрофічного витоку пам’яті (такого, що OOM неминучий), під час якого ваш комп'ютер працює , для всіх практичних цілей недоступний.

Зазвичай я проходжу ½-2 GiB свопом незалежно від того, скільки оперативної пам'яті має комп'ютер.


0

Зокрема, навіщо мені потрібно двічі зберігати дані, що зберігаються в оперативній пам'яті ??

Переміщення просто для звільнення системної пам'яті. Якщо ви почнете обмежувати обсяг пам'яті, система звільнить пам'ять, перемістивши найменш використані дані з пам'яті на файл заміни на жорсткому диску. Звичайно, швидкість покарання, але це звільняє пам'ять для інших програм.

Оскільки пам'ять є такою дешевою, вам завжди краще мати стільки, скільки можете собі дозволити. Таким чином до swap отримує дуже мало доступу, і ваша система залишається приємною і швидкою.


0

З більшим простором підкачки програми можуть використовувати більше оперативної пам’яті, ніж є на комп’ютері. Це можливо, тому що навіть якщо дані займають більше місця, ніж вміщуються у фізичну пам'ять одразу, до неї неможливо отримати доступ одразу - своп втягується у фізичну пам'ять, коли це потрібно. Альтернативою є те, щоб програми випадково гинули, коли пам’ять закінчується. Це особливо корисно, якщо ви хочете редагувати зображення чи відео з високою роздільною здатністю, або робити 3D-моделювання чи рендерінг, або проводити чисельний аналіз на великих обсягах даних, є багато видів програм, які хочуть отримати божевільну кількість оперативної пам’яті, де це краще, щоб він міг запускати його дуже повільно, ніж взагалі не міг його працювати без збоїв.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.