Вечер добрый.
Решил попробовать zram на одном из серверов gentoo linux, что могу сказать пока спокойно.
Уменя иногда система уходит в своп, уж больно тяжелые запросы есть, от них пока что не куда не дется.
Прогеру думают, я пока решил временно использовать zram, конечно лучшим вариантом производительности был-бы хороший ssd. Пока этот вариант попробую авось и прокатит.
zRam это экспериментальный модуль ядра Linux (ранее известный как «compcache»). Он увеличивает производительность путем предотвращения подкачки страниц на диск, используя сжатое блочное устройство в оперативной памяти, пока не появится необходимость использовать файл подкачки на жестком диске. Скорость обмена с оперативной памятью быстрее, чем с жестким диском, следовательно zRam позволяет Linux производить большее число операций подкачки, особенно на старых компьютерах с малым объемом оперативной памяти.
wikipedia zram
Серьезных проблем при реализации zram не возникло.
Опишу установку.
Для начало мне нужно было уставновить пакет layman, типа альтернативное дерево пакетов.
# emerge layman -av
Теперь добавим репозитарий где хранится пакет zram-init.
# layman -a mv # mv -это сам репозитарий.
Теперь обновим только что добавленный репозитарий.
# layman -s mv
После
# emerge zram-init -av
Но у меня почему-то не вышло, пишет нету пакета, решил разобраться в чем проблема.
Полез на сайт репозитория mv, ебилд лежит в директории sys-block/zram-init.
Открыв просмотр ебилда и у видел, что ссылки ведут на гитхаб, по шел по ссылки и что-же обнаружил!
На гитxабе лежит архив zip а не tar.gz.
Скачал архив, распаковал его, и просто разнес нужные вайлы по нужным диретокриям.
Вот сам ебилд, в нем.
# Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ EAPI=5 RESTRICT="mirror" inherit eutils vcs-snapshot DESCRIPTION="Scripts to support compressed swap devices or ramdisks with zram" HOMEPAGE="https://github.com/vaeth/zram-init/" SRC_URI="http://github.com/vaeth/${PN}/tarball/release-${PV} -> ${P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="zsh-completion" src_prepare() { epatch_user } src_install() { dosbin sbin/* doinitd openrc/init.d/* doconfd openrc/conf.d/* if use zsh-completion then insinto /usr/share/zsh/site-functions doins zsh/* fi } pkg_postinst() { elog elog "To use zram, activate it in your kernel and add it to default runlevel:" elog "rc-config add zram default" elog }
Файлы кидаем в эти директории.
/etc/conf.d/zram-init /etc/init.d/zram-init /sbin/zram-init /usr/sbin/zram-init
Так же если в ядре нету поддержке блочных устройств то добавим их.
# cd /usr/src/linux && make menuconfig Device Drivers ---> [*] Staging drivers ---> < M > Compressed RAM block device support [ ] Compressed RAM block device debug support < * > Memory allocator for compressed pages
После пересобирем ядро.
# make && make install && make modules_install Вот что у меня получилось.
# zgrep ZRAM /proc/config.gz CONFIG_ZRAM=m # CONFIG_ZRAM_DEBUG is not set
Ну и теперь осталось внести некоторые изменения.
# cat /etc/conf.d/zram-init | grep -v "#" load_on_start="yes" unload_on_stop="yes" num_devices="2" type0="swap" flag0="16383" size0="800" type1="swap" flag1="16383" size1="800" type2="/tmp" flag2="ext3" size2="600"
Видно в конфигурационном файле, что я создал два блочных устройства под swap и одно под tmp.
После внесения изменений, стратуем вервис.
# /etc/init.d/zram-init start
Вот что мы видим.
# cat /proc/swaps Filename Type Size Used Priority /dev/sda6 partition 4449024 0 -1 /dev/zram0 partition 819196 1416 16383 /dev/zram1 partition 819196 1420 16383
Вот и все.
Спасибо…бум пробовать)))