How can I check to verify that zswap is enabled and working on my system?
Asked
Active
Viewed 1.6k times
3 Answers
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
Alexey Vazhnov
- 494
Nikolay Naydenov
- 59
- 1
- 1
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