linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Vlastimil Babka <vbabka@suse.cz>
To: Andrew Morton <akpm@linux-foundation.org>,
	Vitaly Wool <vitalywool@gmail.com>
Cc: Linux-MM <linux-mm@kvack.org>,
	linux-kernel@vger.kernel.org, Seth Jennings <sjenning@redhat.com>,
	Dan Streetman <ddstreet@ieee.org>
Subject: Re: [PATCH v2] z3fold: the 3-fold allocator for compressed pages
Date: Mon, 25 Apr 2016 09:28:47 +0200	[thread overview]
Message-ID: <571DC72F.3030503@suse.cz> (raw)
In-Reply-To: <20160421162210.f4a50b74bc6ce886ac8c8e4e@linux-foundation.org>

On 04/22/2016 01:22 AM, Andrew Morton wrote:
> On Tue, 19 Apr 2016 11:48:45 +0200 Vitaly Wool <vitalywool@gmail.com> wrote:
>
>> This patch introduces z3fold, a special purpose allocator for storing
>> compressed pages. It is designed to store up to three compressed pages per
>> physical page. It is a ZBUD derivative which allows for higher compression
>> ratio keeping the simplicity and determinism of its predecessor.
>>
>> The main differences between z3fold and zbud are:
>> * unlike zbud, z3fold allows for up to PAGE_SIZE allocations
>> * z3fold can hold up to 3 compressed pages in its page
>>
>> This patch comes as a follow-up to the discussions at the Embedded Linux
>> Conference in San-Diego related to the talk [1]. The outcome of these
>> discussions was that it would be good to have a compressed page allocator
>> as stable and deterministic as zbud with with higher compression ratio.
>>
>> To keep the determinism and simplicity, z3fold, just like zbud, always
>> stores an integral number of compressed pages per page, but it can store
>> up to 3 pages unlike zbud which can store at most 2. Therefore the
>> compression ratio goes to around 2.5x while zbud's one is around 1.7x.
>>
>> The patch is based on the latest linux.git tree.
>>
>> This version of the patch has updates related to various concurrency fixes
>> made after intensive testing on SMP/HMP platforms.
>>
>> [1]https://openiotelc2016.sched.org/event/6DAC/swapping-and-embedded-compression-relieves-the-pressure-vitaly-wool-softprise-consulting-ou
>>
>
> So...  why don't we just replace zbud with z3fold?  (Update the changelog
> to answer this rather obvious question, please!)

There was discussion between Seth and Vitaly on v1. Without me knowing 
the details myself, it looked like Seth's objections were addressed, but 
then the thread died. I think there should first be a more clear answer 
from Seth whether z3fold really looks like a clear win (i.e. not 
workload-dependent) over zbud, in which case zbud could be extended?

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2016-04-25  7:28 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-19  9:48 Vitaly Wool
2016-04-21 23:22 ` Andrew Morton
2016-04-25  7:28   ` Vlastimil Babka [this message]
2016-04-25 14:54     ` Seth Jennings
2016-04-25 15:01     ` Vitaly Wool

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=571DC72F.3030503@suse.cz \
    --to=vbabka@suse.cz \
    --cc=akpm@linux-foundation.org \
    --cc=ddstreet@ieee.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=sjenning@redhat.com \
    --cc=vitalywool@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox