Розвіюємо міфи: Файл підкачки на RAM-диску

  1. Отримуйте анонси нових статей прямо на пошту

Незважаючи на повсюдне поширення SSD накопичувачів, а також завдяки дешевизні модулів пам'яті, ідея RAM-диска в деяких випадках не втратила актуальності - віртуального диску, розташованому в оперативній пам'яті комп'ютера і забезпечує феноменальні швидкості читання і сьогодні знайдеться застосування Незважаючи на повсюдне поширення SSD накопичувачів, а також завдяки дешевизні модулів пам'яті, ідея RAM-диска в деяких випадках не втратила актуальності - віртуального диску, розташованому в оперативній пам'яті комп'ютера і забезпечує феноменальні швидкості читання і сьогодні знайдеться застосування. Однак не завжди використання даної технології раціонально, і в даній статті я розповім про самому безглуздому застосуванні RAM-диска, яке мені доводилося зустрічати, - розташуванні на ньому файлу підкачки.

Задумайтесь, ми свідомо зменшуємо пам'ять комп'ютера для розміщення в ній рамдіска з підкачкою, яка потрібна, при малому (недостатньому) кількості пам'яті. Замкнуте коло.

Стаття: Ramdisk - віртуальний диск для прискорення роботи комп'ютера

Тепер розповім більш докладно з картинками. Весь доступний для використання ресурс пам'яті комп'ютера умовно складається з двох частин - фізичної пам'яті, тобто модулів, встановлених на материнській платі, і файлу підкачки (Свопу - від англ. Swap-file), який використовується при нестачі фізичної пам'яті.

Такий механізм захищає систему від виснаження ресурсів. Скидаючи тимчасово не використовуються програми та бібліотеки в swap-файл на жорсткому диску, звільняється місце для нових додатків. Операційка буде працювати повільніше, але не заглючить і не зависне.

Підкачка розширює можливості фізичних модулів
Підкачка розширює можливості фізичних модулів

Ось як виглядає ресурс пам'яті при створенні в ній RAM-диска. Частина фізичної (саме цінної фізичної) пам'яті відрізається і віддається під накопичувач, який видно в системі як звичайний диск. Відповідно, розмір диска не може бути більше розмірів оперативної пам'яті. Такий віртуальний «вінчестер» має найвищу продуктивність, на порядок (а то і більше) обганяє навіть SSD. Але розмір пам'яті зменшений, а значить, частина програм, яким не вистачило місця, будуть відправлені в файл підкачки.

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

Тепер подивіться на особливості розподілу пам'яті при розташуванні Свопу на RAM-диску. По-перше, сумарний розмір вільної пам'яті і Swap-файлу не може бути більше фізичної пам'яті комп'ютера, що вбиває взагалі будь-який сенс підкачки, спрямованої на розширення ліміту фізичної пам'яті. По-друге, операційна система досить гнучко вміє розподіляти свої ресурси. Обмежуючи систему віртуальним диском, ми не даємо повного контролю над пам'яттю.

Порівняйте з попередньою картинкою
Порівняйте з попередньою картинкою. Сумарний ресурс той же, але тепер система ефективно вирішує, як використовувати пам'ять, наприклад під файловий кеш.

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

Приклад. У комп'ютері 6 Гбайт оперативної пам'яті і 2 Гбайт в підкачування на жорсткому диску. Сумарно під систему і програми виділено 8 Гбайт. Файловий кеш може бути виділений тільки в межах фізичних 6-ти Гбайт. Тепер ми хочемо позбутися дискової підкачки на вінчестері і перенести її на RAM-диск. Створюємо віртуальний диск, рівний за розміром Свопу.

Разом виходить: 4 Гбайт вільного місця + 2 Гбайт під Swap-файл. Сумарний розмір під систему і програми - 6 Гбайт. Тільки тепер кеш може бути виділений в межах 4 Гбайт (а не 6-ти, як раніше). Якщо хочеться позбутися від дискової підкачки, наприклад, при наявності великої кількості пам'яті, то простіше взагалі відключити Своп.

Стосовно нашого прикладу, весь виділений ресурс буде складатися тільки з фізичної пам'яті розміром 6 Гбайт, яка виділена під систему і програми. Тобто, в порівнянні з попереднім випадком (підкачки на віртуальному носії) ми нічого не втрачаємо, плюс система має можливість більш ефективно використовувати ресурси.

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

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

Отримуйте анонси нових статей прямо на пошту


Схожі матеріали: