<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Использование zRam для увеличения количества доступной памяти]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=27205</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=27205&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Использование zRam для увеличения количества доступной памяти».]]></description>
		<lastBuildDate>Sat, 30 Mar 2013 07:27:07 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=337262#p337262</link>
			<description><![CDATA[<div class="quotebox"><cite>Lupo Alberto⇓ пишет:</cite><blockquote><p>ormorph, если я правильно понял, ваш скрипт создаёт количество swap&#039;ов, прямо пропорциональное числу используемых процессоров (ядер), с размером, обратно пропорциональным их числу?<br />Объясните, пожалуйста, на чём основаны такие расчёты?</p></blockquote></div><p>Да все довольно просто, так как сжатие <strong>zram</strong> однопоточное, то для каждого потока должно быть выделено равное количество памяти, для эффективного ее использования при полном распределении процессов(загрузке всех ядер-потоков). </p><p>Тут немного не верное высказывание про количество ядер, на двух ядерном процессоре, в котором на каждое ядро отводится два потока, это число будет равно четырем, так как на самом деле считаются потоки а не ядра.</p><p>В режиме компиляции очень даже заметен выигрыш, меньше лазит в своп на жестком диске(практически не используется), только после того как будет использовано все пространство памяти.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Sat, 30 Mar 2013 07:27:07 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=337262#p337262</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=337248#p337248</link>
			<description><![CDATA[<p><strong>fragment</strong>, неплохо, конечно, но перезагружаться нельзя <img src="https://linuxforum.ru/img/smilies/bx.gif" alt="bx" /></p>]]></description>
			<author><![CDATA[null@example.com (Lupo Alberto)]]></author>
			<pubDate>Sat, 30 Mar 2013 06:35:54 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=337248#p337248</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=337244#p337244</link>
			<description><![CDATA[<p>А я запихал в zram дерево portage вместе с оверлеями.</p>]]></description>
			<author><![CDATA[null@example.com (fragment)]]></author>
			<pubDate>Sat, 30 Mar 2013 06:31:40 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=337244#p337244</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=337243#p337243</link>
			<description><![CDATA[<p><strong>ormorph</strong>, если я правильно понял, ваш скрипт создаёт количество <em>swap&#039;ов</em>, прямо пропорциональное числу используемых процессоров (ядер), с размером, обратно пропорциональным их числу?<br />Объясните, пожалуйста, на чём основаны такие расчёты?</p>]]></description>
			<author><![CDATA[null@example.com (Lupo Alberto)]]></author>
			<pubDate>Sat, 30 Mar 2013 06:28:24 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=337243#p337243</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=337242#p337242</link>
			<description><![CDATA[<p>Немного усовершенствовал скрипт запуска zram для gentoo <br /></p><div class="codebox"><pre><code>#!/sbin/runscript

MODULE=`zgrep CONFIG_ZRAM= /proc/config.gz|sed &#039;s/CONFIG_ZRAM=//&#039;`
checkconfig(){
        if [[ &quot;$MODULE&quot; == &quot;y&quot; ]] ; then
            return 0
        elif [[ &quot;$MODULE&quot; == &quot;m&quot; ]] ; then
            return 0
        fi
        eerror &quot;Kernel does not support zram function. Recompile a kernel&quot;
        return 1
}

CPU=`awk -v cpu=0 &#039;$1 == &quot;processor&quot; {cpu=cpu+1} END {print cpu}&#039; /proc/cpuinfo`
SIZE=`awk -v cpu=$CPU &#039;$1 == &quot;MemTotal:&quot; {print ((0 + $2) * 1024)/cpu}&#039;  /proc/meminfo`

start(){
    checkconfig || return 1
        ebegin &quot;Starting zram&quot;
    if [[ &quot;$MODULE&quot; == &quot;m&quot; ]] ; then
                modprobe zram num_devices=$CPU
    fi
        for (( i=0; i&lt;$CPU; i++ ))
        do
                echo $SIZE &gt; /sys/block/zram$i/disksize
                mkswap /dev/zram$i
                swapon -p 10 /dev/zram$i
        done
    eend $?
}

stop(){
        ebegin &quot;Deactivating zram swap&quot;
        for (( i=0; i&lt;$CPU; i++ )) 
        do
                swapoff /dev/zram$i
                echo 1 &gt; /sys/block/zram$i/reset
        done
    if [[ &quot;$MODULE&quot; == &quot;m&quot; ]] ; then
        modprobe -r zram
    fi
        eend $?
}</code></pre></div><p>Теперь все довольно просто, не имеет значения, модулем собрана или в ядре.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Sat, 30 Mar 2013 06:20:16 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=337242#p337242</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334325#p334325</link>
			<description><![CDATA[<div class="quotebox"><cite>yars⇓ пишет:</cite><blockquote><p>ormorph, попробую... Меня смутило, что</p></blockquote></div><p>Ну так этот скрипт как раз и использует всю память для zram, я его и использую, наблюдая за выводом <strong>gkrellm</strong> видно что swap начинает использоваться только когда использование оперативной памяти приближается к процентному значению памяти в <strong>/proc/sys/vm/swappiness</strong>.<br />Т.е. до использования свопа память работает в своем обычном режиме, не смотря на то что размер под создание ФС(swap) был полный размер оперативной памяти.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Sat, 16 Mar 2013 13:34:21 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334325#p334325</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334304#p334304</link>
			<description><![CDATA[<p><strong>ormorph</strong>, попробую... Меня смутило, что </p><div class="quotebox"><cite>ormorph пишет:</cite><blockquote><p>Т.е. ничего страшного если вы используете под zram всю память</p></blockquote></div>]]></description>
			<author><![CDATA[null@example.com (yars)]]></author>
			<pubDate>Sat, 16 Mar 2013 13:15:56 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334304#p334304</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334300#p334300</link>
			<description><![CDATA[<div class="quotebox"><cite>yars⇓ пишет:</cite><blockquote><p>Нет, как в этом топике обсуждается, часть оперативки. В текущих 512 с zRam тесновато.</p></blockquote></div><p>Ну если обратите внимание на скрипт что я выложил, то тут используется для создание zram устройств полное количество памяти деленное на количество ядер, тем не менее использование свопа в zram начинается все так же в зависимости от значения в <strong>/proc/sys/vm/swappiness</strong><br />Т.е. ничего страшного если вы используете под zram всю память, zram все равно будет использовать ее не всю а только часть в зависимости от значения в <strong>/proc/sys/vm/swappiness</strong></p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Sat, 16 Mar 2013 13:10:24 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334300#p334300</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334290#p334290</link>
			<description><![CDATA[<div class="quotebox"><cite>ormorph пишет:</cite><blockquote><p>В смысле хотите использовать вместо свопа другую ФС?</p></blockquote></div><p>Нет, как в этом топике обсуждается, часть оперативки. В текущих 512 с zRam тесновато.</p>]]></description>
			<author><![CDATA[null@example.com (yars)]]></author>
			<pubDate>Sat, 16 Mar 2013 12:53:07 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334290#p334290</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334284#p334284</link>
			<description><![CDATA[<div class="quotebox"><cite>yars⇓ пишет:</cite><blockquote><p>И да, по моим набюдениям, на машинках типа моей профита от использования zram не сильно много. Но диск он способен разгрузить, так что еще наращу память и половину отдам zram.</p></blockquote></div><p>В смысле хотите использовать вместо свопа другую ФС?</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Sat, 16 Mar 2013 12:41:15 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334284#p334284</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334276#p334276</link>
			<description><![CDATA[<p>И да, по моим набюдениям, на машинках типа моей профита от использования zram не сильно много. Но диск он способен разгрузить, так что еще наращу память и половину отдам zram.</p>]]></description>
			<author><![CDATA[null@example.com (yars)]]></author>
			<pubDate>Sat, 16 Mar 2013 12:30:16 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334276#p334276</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334271#p334271</link>
			<description><![CDATA[<div class="quotebox"><cite>Lupo Alberto⇓ пишет:</cite><blockquote><p>Так в zram оно же сжимает, и, насколько я понял, «swap&#039;ить» в zram начнёт, когда оперативка закончится.</p></blockquote></div><p>Хм нет, тут swap&#039;ить начнет в зависимости от значения в <strong>/proc/sys/vm/swappiness</strong>, чем меньше значение, тем больше оперативной памяти будет использовать прежде чем залезть в своп.<br />Для использования zram в полне подойдет значение по умолчанию в /proc/sys/vm/swappiness равное 60. При слишком маленьком значении выгода от использования <strong>zram</strong> будет небольшая.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Sat, 16 Mar 2013 12:19:24 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334271#p334271</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334265#p334265</link>
			<description><![CDATA[<div class="quotebox"><cite>Lupo Alberto⇓ пишет:</cite><blockquote><p>Сегодня прочитал на «хабре», прикрутил, наблюдаю...</p></blockquote></div><p>Если использовать встроенный zram в ядро, то в загрузчике следует использовать опцию:<br /><strong>zram.num_devices=4</strong> где <strong>4</strong> количество ядер в процессоре.</p><p>Ну и под это состряпал скрипт запуска <strong>zram</strong>, который считает количество ядер и&nbsp; количество памяти для каждого устройства <strong>/dev/zram(i) </strong> а затем монтирует.<br /><strong>/sbin/zram.sh</strong>:<br /></p><div class="codebox"><pre><code>#!/bin/bash
zram_start() {
cpu=`awk -v cpu=0 &#039;$1 == &quot;processor&quot; {cpu=cpu+1} END {print cpu}&#039; /proc/cpuinfo`
SIZE=`awk -v cpu=$cpu &#039;$1 == &quot;MemTotal:&quot; {print ((0 + $2) * 1024)/cpu}&#039;  /proc/meminfo`
echo $SIZE

for ((a=0; a&lt;cpu; a++))
do
echo $SIZE &gt;/sys/block/zram$a/disksize
echo &quot;$SIZE &gt;/sys/block/zram$a/disksize&quot;
done

for ((a=0; a&lt;cpu; a++))
do
mkswap /dev/zram$a
done

for ((a=0; a&lt;cpu; a++))
do
swapon /dev/zram$a -p 10
done
}

zram_start &gt;/dev/null &amp;</code></pre></div><p>ну и для gentoo скрипт автозагрузки.</p><div class="codebox"><pre><code>#!/sbin/runscript

depend()
{
    before xdm
}

start()
{
    ebegin &quot;Starting zram&quot;
    zram.sh
    eend 0 &quot;Failed to start zram&quot;
}</code></pre></div><p>Предполагается что перед началом выполнения данного скрипта, уже настроено загрузка модуля либо ядра с нужным количеством устройств /dev/zram</p><p>Проверил сжатие действительно работает в режиме компиляции тормоза пропали. Ну и память используется теперь значительно меньше.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Sat, 16 Mar 2013 11:54:50 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334265#p334265</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=333732#p333732</link>
			<description><![CDATA[<p><strong>Wolfenberg</strong>, в таком случае как я и говорил - на серверной железяке модулями по 32Гб набивать</p>]]></description>
			<author><![CDATA[null@example.com (Anarhyst)]]></author>
			<pubDate>Thu, 14 Mar 2013 14:10:49 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=333732#p333732</guid>
		</item>
		<item>
			<title><![CDATA[Re: Использование zRam для увеличения количества доступной памяти]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=333707#p333707</link>
			<description><![CDATA[<p><strong>Anarhyst</strong>, создание хранилища быстрого доступа.</p>]]></description>
			<author><![CDATA[null@example.com (Wolfenberg)]]></author>
			<pubDate>Thu, 14 Mar 2013 12:03:22 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=333707#p333707</guid>
		</item>
	</channel>
</rss>
