If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Comment

Funny how these things work out. Earlier today, I was thinking that compressing swapped data before actually writing it to the swap device might reduce the demand on the HDD's throughput and provide a marginal performance gain.

Now I feel silly. This is obviously a much better idea.

Of course, I haven't had a swap partition configured on my computer for a couple of years now. I'd much rather suffer the occasional OOM crash instead of frequent lag caused by swapping.

Comment

kinda ironic, because isnt one of the perks about compressing data that it takes up a lot of ram and CPU power in favor of faster loading and smaller disk consumption? anyways, while I'm sure there's some huge technical detail I'm not aware of, I think this kind of thing came a few years too late. RAM is really cheap nowadays, I'd rather buy another GB or 2 than use a swap partition.

Comment

RAM is really cheap nowadays, I'd rather buy another GB or 2 than use a swap partition.

Ram is cheap for a new PCs and if one has in his possesion machine that has few years than it might be quite a different story especially if place where place one lives has GDP much lower than US or Western Europe therefore IMHO it is never to late for this kind of development. Besides who is not to say that in 5 years one would not need 10 times more RAM for basic work like to display some new 3D desktop, manufactures use some excuse to increase prices of parts like it was with HDDs and flooding and it would make You think again about Zswap...

Comment

Oh! I hope Zswap will improve swap and system performance.
Everyone knows that especially in Linux, when the swap is used the system performance is disastrous. I know this should be normal because the speed of the hard disk, but Linux swap have worse performance compared to other systems who do heavy usage of the paging file. I think this problem is well known in Linux because there is much written on the internet to avoid the swap usage changing the swappiness.

Comment

I've got a short snippet on each of the z* modules that were/are in development and what their differences are. I guess I'm writing this more for my own sanity, but I like to share with others

compcache (a.k.a. ramzswap): developed by Nitin Gupta, it creates a block device backed by compressed RAM - never made it to main line

zram: a rewrite of compcache

zcache: Nitin Gupta's 2nd attempt to get a RAM compression module into the kernel. It uses the CleanCache framework, which hooks into the page cache and file system code. CleanCache was merged in May 26, 2011 and zCache was merged in October 2011. zcache uses LZO to compress the pages. Unlike zram/compcache, zcache transparently stores the cache pages (no block device).

zswap: written by Seth Jennings under the Unix philosophy of "doing one thing well", it leaves file cache compression and other features for separate code. zswap focuses on managing the compressed memory pool well. It also uses the Frontswap API from which it receives pages. This allows configuration of which compression algorithm to use.

Comment

Although I don't need it any more, I still use zcache back from when I was running Minecraft server and client on the same machine. My free RAM certainly increased and the game performance improved as it no longer hit swap. There haven't been any problems either.

Comment

I've got a short snippet on each of the z* modules that were/are in development and what their differences are. I guess I'm writing this more for my own sanity, but I like to share with others

compcache (a.k.a. ramzswap): developed by Nitin Gupta, it creates a block device backed by compressed RAM - never made it to main line

zram: a rewrite of compcache

zcache: Nitin Gupta's 2nd attempt to get a RAM compression module into the kernel. It uses the CleanCache framework, which hooks into the page cache and file system code. CleanCache was merged in May 26, 2011 and zCache was merged in October 2011. zcache uses LZO to compress the pages. Unlike zram/compcache, zcache transparently stores the cache pages (no block device).

zswap: written by Seth Jennings under the Unix philosophy of "doing one thing well", it leaves file cache compression and other features for separate code. zswap focuses on managing the compressed memory pool well. It also uses the Frontswap API from which it receives pages. This allows configuration of which compression algorithm to use.

Don't forget latest zcache2 from Dan Magenheimer (with ramster in staging-next drivers).
Zcache2 was the first attempt to address the problem of zcache that has no writeback to real swap, allowing evcting pages from swap compressed memory to real swap partition.

Please remember that zcache (or zcache2) tries to dynamically balance both compressed pagecache pages and compressed swap pages against other system memory pressure (and, with ramster, across multiple machines, and with Xen tmem, across multiple Xen guests).

Zswap is only focused on compressing swap pages: this architecture has the great advantage of being simple.