[Beowulf] zram usage

Christopher Samuel samuel at unimelb.edu.au
Thu May 1 17:00:34 PDT 2014

Hash: SHA1

On 02/05/14 07:07, Ellis H. Wilson III wrote:

> Then again, it looks like zram is just a staging mechanism (like a 
> compressed ramdisk or the like) that creates a block device you can
> use to push or pull data from.  Could be way off on that.  So you'd
> have to think hard about how you want to use it.  Wouldn't be as
> simple as "allocate a bunch of memory and the kernel automagically
> compresses some/all in the background."

There are two different kernel features that relate to that in the
kernel, zram is one and zswap is the other.

My reading is that zram is, as you say, a RAM based block device that
you can make filesystems on, and presumably use for a swap device/file.

The zswap code, on the other hand, is a boot time option that uses the
frontswap hooks to provide a pool of compressed memory up front of a
swap device.

There is an LWN article from just over a year ago on these features
(and also mentions zcache which had a brief time in staging before
getting evicted).


Interestingly for 3.15 the zram driver grew the ability to handle
REQ_DISCARD so that if you are using it to mount a filesystem that
supports a discard/trim option (or use fstrim manually) it will get
told about unneeded areas and be able to free the associated memory.

All the best!
- -- 
 Christopher Samuel        Senior Systems Administrator
 VLSCI - Victorian Life Sciences Computation Initiative
 Email: samuel at unimelb.edu.au Phone: +61 (0)3 903 55545
 http://www.vlsci.org.au/      http://twitter.com/vlsci

Version: GnuPG v1.4.14 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/


More information about the Beowulf mailing list