public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: William Lee Irwin III <wli@holomorphy.com>
To: Christoph Lameter <clameter@sgi.com>
Cc: linux-kernel@vger.kernel.org,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Nick Piggin <nickpiggin@yahoo.com.au>, Paul Jackson <pj@sgi.com>,
	Dave Chinner <dgc@sgi.com>, Andi Kleen <ak@suse.de>
Subject: Re: [RFC 0/8] Variable Order Page Cache
Date: Thu, 19 Apr 2007 23:22:15 -0700	[thread overview]
Message-ID: <20070420062215.GE31925@holomorphy.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0704192220510.16360@schroedinger.engr.sgi.com>

On Thu, 19 Apr 2007, William Lee Irwin III wrote:
>> Oh dear. Per-file pagesizes are foul. Better to fix up the pagecache's
>> radix tree than to restrict it like this. There are other attacks on the
>> multiple horizontal internal tree node allocation problem beyond
>> outright B+ trees that allow radix trees to continue to be used.

On Thu, Apr 19, 2007 at 10:27:34PM -0700, Christoph Lameter wrote:
> per-file pagesizes are just the granularity that is available. The order
> value is then readily available for all page cache operations. In practice 
> it is likely that filesystems will have one consistent page size. If you 
> look at the ramfs implementation then you will see that is exactly the
> approach taken here. I want to avoid any modifications to key data 
> structures or locking. If possible straight code transformation.

I'm not sure how to say this politely, so please don't take it as a
slight. Hacks to avoid diffsize increases that would result from data
structure code are highly specious. There are typically functionality
or efficiency issues deliberately left unaddressed to accomplish such.
When committing the patch, you generally end up implicitly committed
to later updates to address those issues.

That said, even if some maintainers consciously agree (it's actually
rather clear that my opinion here is not representative of the majority
if anyone else at all), it does still present an issue for "marketing"
patches since diffsize is so easily latched onto as a metric of risk.

Don't worry about it for now. This will do fine.


On Thu, 19 Apr 2007, William Lee Irwin III wrote:
>> I've always wanted the awareness to be pervasive, so it's good to hear
>> there's someone with a common interest. If this effort takes off, I'd be
>> happy to contribute to it. I do wonder what ever happened with the gelato
>> codebase, though.

On Thu, Apr 19, 2007 at 10:27:34PM -0700, Christoph Lameter wrote:
> The superpages? I do not think that we should be getting that complicated 
> here. Maybe we can pick up some ideas at some point.

They're all TLB so picking things up on the TLB side can be done there.
I think they also keep the long format VHPT code updated to recent
mainline, which makes higher-order pages meaningful on ia64 (which with
the region register -based affair they are effectively not).


On Thu, 19 Apr 2007, William Lee Irwin III wrote:
>> I'm afraid this may be approaching an underappreciated research topic.
>> Most sponsors of such research seem to have an active disinterest in
>> getting page replacement to properly interoperate with all this.

On Thu, Apr 19, 2007 at 10:27:34PM -0700, Christoph Lameter wrote:
> Well that is the difference between academia where one gets his Ph.D. for
> superpages, publishes a couple of papers and then its over and real 
> kernel work where this actually will have to work consistently with the 
> rest of the system. Let us thus do small steps towards the goal 
> while keeping things as simple and straightforward as possible.

A more careful reading would reveal this as a criticism of industrial
sponsorship of research, not academia per se. For instance, what IHV
would bother sponsoring research on page replacement, since when
grinding out [trademarked name of major benchmark censored] numbers to
sell their systems, they arrange for page replacement never to happen?


-- wli

  reply	other threads:[~2007-04-20  6:21 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-19 16:35 [RFC 0/8] Variable Order Page Cache Christoph Lameter
2007-04-19 16:35 ` [RFC 1/8] Add order field to address_space struct Christoph Lameter
2007-04-19 16:35 ` [RFC 2/8] Basic allocation for higher order page cache pages Christoph Lameter
2007-04-20 10:55   ` Mel Gorman
2007-04-19 16:35 ` [RFC 3/8] Flushing and zeroing " Christoph Lameter
2007-04-20 11:02   ` Mel Gorman
2007-04-20 16:15     ` Christoph Lameter
2007-04-20 16:51       ` William Lee Irwin III
2007-04-19 16:35 ` [RFC 4/8] Enhance fallback functions in libs to support higher order pages Christoph Lameter
2007-04-19 18:48   ` Adam Litke
2007-04-19 19:10     ` Christoph Lameter
2007-04-19 22:50       ` David Chinner
2007-04-20  1:15         ` Christoph Lameter
2007-04-20  8:21       ` Jens Axboe
2007-04-20 16:01         ` Christoph Lameter
2007-04-20 16:51           ` Jens Axboe
2007-04-20 11:05   ` Mel Gorman
2007-04-20 18:50     ` Dave Kleikamp
2007-04-20 19:10       ` Christoph Lameter
2007-04-20 19:27         ` Dave Kleikamp
2007-04-24 23:00         ` Matt Mackall
2007-04-19 16:35 ` [RFC 5/8] Enhance generic_read/write " Christoph Lameter
2007-04-19 16:35 ` [RFC 6/8] Account for pages in the page cache in terms of base pages Christoph Lameter
2007-04-19 17:45   ` Nish Aravamudan
2007-04-19 17:52     ` Christoph Lameter
2007-04-19 17:54       ` Avi Kivity
2007-04-19 16:35 ` [RFC 7/8] Enhance ramfs to support higher order pages Christoph Lameter
2007-04-20 13:42   ` Mel Gorman
2007-04-20 14:47     ` William Lee Irwin III
2007-04-20 16:30       ` Christoph Lameter
2007-04-20 17:11         ` William Lee Irwin III
2007-04-20 17:15           ` Christoph Lameter
2007-04-20 17:19             ` William Lee Irwin III
2007-04-20 17:57               ` Christoph Lameter
2007-04-20 19:21                 ` William Lee Irwin III
2007-04-20 17:59               ` Christoph Lameter
2007-04-20 18:01               ` Christoph Lameter
2007-04-20 18:02               ` Christoph Lameter
2007-04-20 16:20     ` Christoph Lameter
2007-04-19 16:35 ` [RFC 8/8] Add some debug output Christoph Lameter
2007-04-19 19:09 ` [RFC 0/8] Variable Order Page Cache Badari Pulavarty
2007-04-19 19:12   ` Christoph Lameter
2007-04-19 19:11 ` Andi Kleen
2007-04-19 19:15   ` Christoph Lameter
2007-04-20 14:37   ` Mel Gorman
2007-04-19 22:42 ` David Chinner
2007-04-20  1:14   ` Christoph Lameter
2007-04-20  6:32   ` Jens Axboe
2007-04-20  7:48     ` David Chinner
2007-04-21 22:18       ` Andrew Morton
2007-04-19 23:58 ` Maxim Levitsky
2007-04-20  1:15   ` Christoph Lameter
2007-04-20  4:47 ` William Lee Irwin III
2007-04-20  5:27   ` Christoph Lameter
2007-04-20  6:22     ` William Lee Irwin III [this message]
2007-04-20  8:42   ` David Chinner
2007-04-20 14:14 ` Mel Gorman
2007-04-20 16:23   ` Christoph Lameter

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=20070420062215.GE31925@holomorphy.com \
    --to=wli@holomorphy.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=ak@suse.de \
    --cc=clameter@sgi.com \
    --cc=dgc@sgi.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nickpiggin@yahoo.com.au \
    --cc=pj@sgi.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