30

How can I check to verify that zswap is enabled and working on my system?

Rucent88
  • 2,058

3 Answers3

28
sudo dmesg | grep zswap

That should be all you need to know if it's running. You should see a message along the lines of:

[    1.241302] zswap: loading zswap
[    1.241306] zswap: using zbud pool
[    1.241310] zswap: using lzo compressor

On Ubuntu 20.04 and later, the dmesg output is even shorter, like this:

[    1.802721] zswap: loaded using pool lzo/zbud

You can see what it's doing with the following:

$ sudo grep -R . /sys/kernel/debug/zswap
/sys/kernel/debug/zswap/stored_pages:0
/sys/kernel/debug/zswap/pool_total_size:0
/sys/kernel/debug/zswap/duplicate_entry:0
/sys/kernel/debug/zswap/written_back_pages:0
/sys/kernel/debug/zswap/reject_compress_poor:0
/sys/kernel/debug/zswap/reject_kmemcache_fail:0
/sys/kernel/debug/zswap/reject_alloc_fail:0
/sys/kernel/debug/zswap/reject_reclaim_fail:0
/sys/kernel/debug/zswap/pool_limit_hit:0

The key parameters to look out for are stored_pages which is the number of compressed pages and written_back_pages which is the number of pages which have been written out to the swap file.

Artur Meinild
  • 31,035
Oli
  • 299,380
5

Shell expansion is a weird thing sometimes. grep fortunately have a recursive option so to simplify it:

sudo grep -r . /sys/kernel/debug/zswap
1

The other answers are wrong if zswap has been modified at runtime.

For checking under any circumstance:

cat /sys/module/zswap/parameters/enabled

Possible options are: Y (yes) or N (no)

wjandrea
  • 14,504