zram

This article is about the Linux kernel feature. For the memory hardware technology, see Z-RAM. For the Linux kernel compressed swap cache, see zswap.
zram
Written in C
Operating system Linux
Type Linux kernel features
License GNU General Public License
Website kernel.org

zram (also referred to as zRAM and previously called compcache) is a Linux kernel feature that provides a form of virtual memory compression. zram increases performance by avoiding paging to disk and using a compressed block device in RAM instead, inside which paging takes place until it is necessary to use the swap space on a hard disk drive. Since using RAM is an alternative way to provide swapping on RAM, zram allows Linux to make more use of RAM when swapping/paging is required, especially on older computers with less RAM installed.[1][2]

Despite the cost of RAM being relatively low (as of February 2014), zram still offers advantages for embedded devices, netbooks and similar low-end hardware devices. Such devices usually use flash-based storage which has a limited lifespan due to its nature, so avoiding its usage for providing swap space prevents it from wearing out quickly. Also, using zram results in a significantly reduced I/O for Linux systems that require swapping.[3][4]

zram was merged into the Linux kernel mainline in kernel version 3.14, released on 30 March 2014.[5] As of Linux kernel version 3.15, released on 8 June 2014, zram supports LZ4 compression algorithm, while LZO remains as the default compression backend. Changes in kernel 3.15 also provide performance improvements, as well as the ability to switch the compression algorithm via sysfs.[6]

Google uses zram in Chrome OS and it is also available as an option for Android 4.4 devices.[7][8] Also, Lubuntu started using zram with version 13.10.[9] As of December 2012, Ubuntu considered enabling zram by default on computers with small amounts of installed RAM.[10]

See also

References

  1. "Increased performance in Linux with zram (virtual swap compressed in ram)". webupd8.org. 2 October 2011. Retrieved 8 November 2011.
  2. "compcache Compressed Caching for Linux". code.google.com. 27 April 2010. Retrieved 11 November 2011.
  3. "ZRAM Might Finally Be Moved Out Of Linux Staging". Phoronix. 2013-08-14. Retrieved 2014-02-09.
  4. "zRAM Is Still Hoping For A Promotion". Phoronix. 2013-11-25. Retrieved 2014-02-09.
  5. "Linux kernel 3.14, Section 1.2. zram: Memory compression mechanism considered stable". kernelnewbies.org. 2014-03-30. Retrieved 2014-04-01.
  6. "Linux kernel 3.15, Section 1.7. zram: LZ4 compression support, improved performance". kernelnewbies.org. 2014-06-08. Retrieved 2014-06-15.
  7. Larabel, Michael (28 March 2013). "Google is Enabling zram for Chrome OS By Default". chromestory.com. Retrieved 29 March 2013.
  8. Google, Android KitKat | Android Developers
  9. "Next Lubuntu provided with zram enabled! – LinuxVillage (en)". linuxvillage.org. 17 October 2013. Retrieved 10 November 2013.
  10. Dinsan, Francis (8 December 2012). "Ubuntu Linux Considers Greater Usage of zRAM". Retrieved 30 October 2013.

External links