From: Roger Larsson <roger.larsson@norran.net>
To: linux-mm@kvack.org, Daniel Phillips <phillips@bonn-fries.net>
Cc: "Scott F. Kaplan" <sfkaplan@cs.amherst.edu>
Subject: Re: [RFC][PATCH] alternative way of calculating inactive_target
Date: Thu, 16 Aug 2001 14:45:51 +0200 [thread overview]
Message-ID: <200108161250.f7GCo8w13004@mailc.telia.com> (raw)
In-Reply-To: <20010816084939Z16265-1231+1158@humbolt.nl.linux.org>
On Thursday den 16 August 2001 10:55, Daniel Phillips wrote:
> On August 16, 2001 05:33 am, Roger Larsson wrote:
> > Hi,
> >
> > 1. Two things in this file, first an unrelated issue (but included in the
> > patch) global_target in free_shortage shouldn't it be freepages.low?
> > Traditionally freepages.high has been when to stop freeing pages.
> >
> > 2. I have wondered about how inactive_target is calculated.
> > This is an alternative approach...
> >
> > In this alternative approach I use two wrapping counters.
> > (memory_clock & memory_clock_rubberband)
> >
> > memory_clock is incremented only when allocating pages (and it
> > is never decremented)
>
> Yes, exactly, did you read my mind? Page units are the natural quantum
> of the time base for the whole mm. When we clock all mm events according
> to the (__alloc_page << order) timebase then lots of memory spikes are
> magically transformed into smooth curves and it becomes immediately
> obvious how much scanning we need to do at each instant. Now, warning,
> this is a major shift in viewpoint and I'll wager, unwelcome on this side
> of the 2.5 split. I'd be happy to work with you doing a skunkworks-type
> proof-of-concept though.
>
The idea of using memory allocations as basis for a clock I got from Scott F
Kaplan and his thesis. "Compressed Caching and Modern Virtual Memory
Simulation" see chapter 2.1.4 'Timescale Relativity I: Virtual Memory Time
and "Soonness"'
> > memory_clock_rubberband is calculated to be close to what
> > memory_clock should have been for MEMORY_CLOCK_WINDOW seconds
> > earlier, using current values and information about how long it was since
> > it was updated the last time. This makes it possible to recalculate the
> > target more often when pressure is high - and it simplifies kswapd too...
>
> I'll supply a cute, efficient filter that does what you're doing with the
> rubberband with a little stronger theoretical basis, as soon as I wake up
> again. Or you can look for my earlier "Early flush with bandwidth
> estimation" post. (Try to ignore the incorrect volatile handling please.)
>
> BTW, you left out an interesting detail: any performance measurements
> you've already done.
I had not done many at that point in time - it was LATE, it did run... etc...
Now I have some data. (but I had changed a limit too)
In the tests I have run the difference is nothing consistently better NOR
worse.
/RogerL
--
Roger Larsson
Skelleftea
Sweden
--
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/
next prev parent reply other threads:[~2001-08-16 12:45 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-08-16 3:33 Roger Larsson
2001-08-16 8:55 ` Daniel Phillips
2001-08-16 12:45 ` Roger Larsson [this message]
2001-08-16 14:06 ` Daniel Phillips
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=200108161250.f7GCo8w13004@mailc.telia.com \
--to=roger.larsson@norran.net \
--cc=linux-mm@kvack.org \
--cc=phillips@bonn-fries.net \
--cc=sfkaplan@cs.amherst.edu \
/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