zRam - swap в оперативной памяти

Системные утилиты 12989 просм. 7 сообщ.

В ядрах, начиная с 2.6.37.1+, появился модуль zRam, который позволяет создавать swap-раздел (подкачку) в оперативной памяти. При этом, все данные сжимаются на лету.

Когда это может быть выгодно?

Для примера, случай 1.

У меня есть нетбук а Atom'е, в который никак не поставишь больше 1.5 Гб оперативки. При этом, там установлен ну очень медленный SSD накопитель. Благодаря данноей технологии там стало возможно работать! :о) а не только книги читать :о)

[vovans@acerone ~]$ free -m
             total       used       free     shared    buffers     cached
Mem:          1498       1241        256          0         10        332
-/+ buffers/cache:        899        599
Swap:         1498          0       1498

Случай 2.

На работе у меня комп на 2-х ксеонах и всего с двумя Гб оперативки. DDR нынче дорогая и дефицитная. За свой счёт особого желания докупать её нет. Комп достаточно мощный и при этом тормозов не избежать с таким кол-вом оперативной памяти. Благодаря применению zRam появилось ощущение, будто я удвоил оперативку. А для процов такая нагрузка просто незаметна )))

Итак. Установка для Ubuntu:

sudo add-apt-repository ppa:shnatsel/zram
sudo apt-get update
sudo apt-get install zramswap-enabler

После чего либо перегружаемся, либо:

$ sudo start zramswap

Напомню, что zRam появился только в ядрах старше 2.6.37.1, поэтому, если у вас в системе ядро старее, можно установить и посвежее.

Для пользователей Arch Linux скрипт есть в AUR. Устанавливаем, прописываем сервис zramswap для автостарта при загрузке системы в DAEMONS в /etc/rc.conf и/или запускаем его:

$ sudo /etc/rc.d/zramswap start

Скрипт автоматически определяет размер файла подкачки (в зависимости от объёма доступной оперативки) и при старте сервиса резервирует нужное место в оперативной памяти.

Вот такая вот штука появилась в ОС Линукс :)

Спасибо что напомнил, войдёт и zRam в сводный обзор...
Есть ещё Prelink и Preload для ускорения запуска приложений, ulatencyd демон контролирующий параметры отзывчивости системы...
Но если 521Мб или даже 1Гб оперативки, то существенного/чувствуемого/ощущаемого влияния они ни на что не оказывают... К сожалению... А вот имея 1,5/2/4Гб оперативки, их наличие чувствуется, прям реально чувствуются (мои неоднократно прочувствованные ощущения).

Вообще, интересная штука, этот самый zRam-диск. Надо будет попробовать профиль SeaMonkey в него запихнуть. А то он сейчас просто в Ram :)

Да и много для чего его применить можно...

Вообще, интересная штука


Ага... Довольно интересная! :))) Ещё бы научиться её попутю пользовать...

А что там учиться? )))) У меня что в Арче, что в Убунте завелось сразу!

Вот что dmesg показывает:

$ dmesg | grep zram
[   18.422146] zram: module is from the staging directory, the quality is unknown, you have been warned.
[   18.422669] zram: Creating 2 devices ...
[   20.208881] Adding 1030544k swap on /dev/zram0.  Priority:100 extents:1 across:1030544k SS
[   20.212192] Adding 1030544k swap on /dev/zram1.  Priority:100 extents:1 across:1030544k SS

Точно запускал инит-срипт? Точно добавил его загрузку в /etc/rc.conf? )))

Арче, что в Убунте завелось сразу!
Завести то не проблема, хоть в Слаке, хоть в ЗёСе, проблема заставить делать его хоть что то вменяемое... А то swap как был пустым, так им и остаётся... Редко когда на 5% бывает использован. Что тогда толку то в том, что он стал почти в два раза больше?
Точно запускал инит-срипт? Точно добавил его загрузку в /etc/rc.conf? )))
А разве надо было это делать? :)))
$ dmesg | grep zram
[   14.256811] zram: module is from the staging directory, the quality is unknown, you have been warned.
[   14.257060] zram: Creating 1 devices ...
[   14.507126] Adding 897168k swap on /dev/zram0.  Priority:100 extents:1 across:897168k SS

Начиная с Ubuntu 12.04 можно просто установить пакет из репозитория (universe):

sudo apt-get install zram-config

Проверить активен ли zRam можно командой:

swapon -s 
Написать ответ…