HighWayToHell - Tag - zram
花园里, 篱笆下
2023-08-13T10:38:15+08:00
Druggo
urn:md5:79dfcacdbfd6434dfc57423d51240051
Dotclear
ZSWAP & ZRAM
urn:md5:e412580c4458ad5250c2cb16c334afd9
2014-05-02T00:42:00+08:00
2014-05-10T19:03:44+08:00
Druggo
计算机
chrome bookchrome osgentoolinuxswapzramzswap内存
<p><strong>更新:之前有些地方理解错了。</strong></p>
<p>内存这东西总是不够用,怎么办?紧跟主线内核的好处就体现出来了:</p>
<p>先说ZSWAP,3.11引入,可以将需要换出(swap out)的页压缩存放在内存的压缩池里,这样在压缩池没有满的时候,根本不会有额外的IO;直到压缩池满了,则把最老的页解压后写入swap设备。(压缩池默认是20%内存,通过/sys/module/zswap/parameters/max_pool_percent调节)
不仅提高了swap的整体性能(以前一旦发生swap,简直跟死机没区别),相应的swap空间也变相增大了。
使用方法很简单,编译ZSWAP支持后,内核启动参数增加"zswap.enabled=1"就行了。
线下使用了一段时间,感觉不错!</p>
<p>可能大家对硬盘里交换区的噩梦还是忘不掉,那么考虑下3.14刚刚稳定的ZRAM吧,和ZSWAP类似,都是进行内存页压缩的,简言之就是用内存模拟出的块设备作为交换分区,具体使用方法可以看这里:<a href="http://wiki.gentoo.org/wiki/Zram" hreflang="en" title="ZRAM HowTo">http://wiki.gentoo.org/wiki/Zram</a></p>
<p>ZRAM我还没有单独用过,3.14以前一直在staging阶段,但是google已经在自家的chrome os里启用了(基于3.4内核),我说最近打开chrome book发现居然有swap了(基于zram),听说android 4.4也有了。</p>
<p>忘了说了,默认的压缩算法都是LZO,压缩比大概是3:1。</p>
<p>最后,肯定有人想知道,ZSWAP和ZRAM可以一起使用吗?当然是可以了。</p>
<p>PS,目前还没有合适的性能测试,生产环境慎用。</p>
http://blog.druggo.org/post/2014/05/02/ZSWAP-ZRAM#comment-form
http://blog.druggo.org/feed/atom/comments/252