From: Daniel Phillips <phillips@bonn-fries.net>
To: "Dan Maas" <dmaas@dcine.com>
Cc: <linux-kernel@vger.kernel.org>,
Tom spaziani <digiphaze@deming-os.org>,
Marcelo Tosatti <marcelo@conectiva.com.br>,
Rik van Riel <riel@conectiva.com.br>
Subject: Re: VM Requirement Document - v0.0
Date: Thu, 5 Jul 2001 15:02:51 +0200 [thread overview]
Message-ID: <0107051502510F.03760@starship> (raw)
In-Reply-To: <fa.jprli0v.qlofoc@ifi.uio.no> <fa.e66agbv.hn0u1v@ifi.uio.no> <002501c104f4$c40619b0$0701a8c0@morph>
In-Reply-To: <002501c104f4$c40619b0$0701a8c0@morph>
On Thursday 05 July 2001 03:49, you wrote:
> > Getting the user's "interactive" programs loaded back
> > in afterwards is a separate, much more difficult problem
> > IMHO, but no doubt still has a reasonable solution.
>
> Possibly stupid suggestion... Maybe the interactive/GUI programs should
> wake up once in a while and touch a couple of their pages? Go too far with
> this and you'll just get in the way of performance, but I don't think it
> would hurt to have processes waking up every couple of minutes and touching
> glibc, libqt, libgtk, etc so they stay hot in memory... A very slow
> incremental "caress" of the address space could eliminate the
> "I-just-logged-in-this-morning-and-dammit-everything-has-been-paged-out"
> problem.
Personally, I'm in idea collection mode for that one. First things first,
from my point of view, our basic replacement policy seems to be broken. The
algorithms seem to be burning too much cpu and not doing enough useful work.
Worse, they seem to have a nasty tendency to livelock themselves, i.e., get
into situations where the mm is doing little other than scanning and
transfering pages from list to list. IMHO, if these things were fixed much
of the 'interactive problem' would go away because reloading the working set
for the mouse, for example, would just take a few milliseconds. If not then
we should take a good hard look at why the desktops have such poor working
set granularity.
Furthermore, approaches that rely on applications touching what they believe
to be their own working sets aren't going to work very well if the mm
incorrectly processes the page reference information, or incorectly balances
it against other things that might be going on, so lets be sure the basics
are working properly. Marcello has the right idea with his attention to
better memory management statistical monitoring. How nice it would be if he
got together with the guy working on the tracing module...
That said, yes, it's good to think about hinting ideas, and maybe bless the
idea of applications 'touching themselves' (yes, the allusion was
intentional).
Here's an idea I just came up with while I was composing this... along the
lines of using unused bandwidth for something that at least has a chance of
being useful. Suppose we come to the end of a period of activity, the
general 'temperature' starts to drop and disks fall idle. At this point we
could consult a history of which currently running processes have been
historically active and grow their working sets by reading in from disk.
Otherwise, the memory and the disk bandwidth is just wasted, right? This we
can do inside the kernel and not require coders to mess up their apps with
hints. Of course, they should still take the time to reengineer them to
reduce the cache footprint.
/me decides to stop spouting and write some code
--
Daniel
next prev parent reply other threads:[~2001-07-05 12:59 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <fa.jprli0v.qlofoc@ifi.uio.no>
[not found] ` <fa.e66agbv.hn0u1v@ifi.uio.no>
2001-07-05 1:49 ` VM Requirement Document - v0.0 Dan Maas
2001-07-05 13:02 ` Daniel Phillips [this message]
2001-07-05 14:00 ` Xavier Bestel
2001-07-05 14:51 ` Daniel Phillips
2001-07-05 15:04 ` Daniel Phillips
2001-07-05 15:00 ` Xavier Bestel
2001-07-05 15:12 ` Daniel Phillips
2001-07-05 15:12 ` Alan Shutko
2001-07-06 19:09 ` Rik van Riel
2001-07-06 21:57 ` Daniel Phillips
[not found] ` <002501c104f4/mnt/sendme701a8c0@morph>
2001-07-09 12:17 ` Pavel Machek
2001-07-12 23:46 ` Daniel Phillips
2001-07-13 21:07 ` Pavel Machek
2001-07-05 15:09 mike_phillips
-- strict thread matches above, loose matches on Subject: below --
2001-07-04 16:08 mike_phillips
2001-06-28 12:20 mike_phillips
2001-06-28 12:30 ` Alan Cox
2001-06-28 13:33 ` Tobias Ringstrom
2001-06-28 13:37 ` Alan Cox
2001-06-28 14:04 ` Tobias Ringstrom
2001-06-28 14:14 ` Alan Cox
2001-06-28 14:52 ` Daniel Phillips
2001-06-28 14:39 ` Daniel Phillips
2001-06-28 15:21 ` Jonathan Morton
2001-06-28 16:02 ` Daniel Phillips
2001-06-28 18:01 ` Marco Colombo
2001-07-02 18:42 ` Rik van Riel
2001-07-03 10:33 ` Marco Colombo
2001-07-03 15:04 ` Daniel Phillips
2001-07-03 18:24 ` Daniel Phillips
2001-07-04 8:12 ` Ari Heitner
2001-07-04 9:41 ` Marco Colombo
2001-07-04 15:03 ` Daniel Phillips
2001-07-03 18:29 ` Daniel Phillips
2001-07-04 8:32 ` Marco Colombo
2001-07-04 14:44 ` Daniel Phillips
2001-06-27 8:53 Martin Knoblauch
2001-06-27 18:13 ` Rik van Riel
2001-06-28 6:59 ` Martin Knoblauch
2001-06-28 11:27 ` Helge Hafting
2001-06-28 11:54 ` Martin Knoblauch
2001-06-28 12:02 ` Tobias Ringstrom
2001-06-28 12:31 ` Xavier Bestel
2001-06-28 13:05 ` Tobias Ringstrom
[not found] <fa.oqkojpv.3hosb7@ifi.uio.no>
[not found] ` <fa.jpsks3v.1o2gag4@ifi.uio.no>
2001-06-27 0:43 ` Dan Maas
2001-06-27 0:45 ` Mike Castle
2001-06-27 10:50 ` Xavier Bestel
2001-06-26 19:58 Jason McMullan
2001-06-26 21:21 ` Rik van Riel
2001-06-26 21:29 ` Jason McMullan
2001-06-26 21:33 ` John Stoffel
2001-06-26 21:42 ` Rik van Riel
2001-06-26 22:21 ` Stefan Hoffmeister
2001-06-26 22:48 ` Jeffrey W. Baker
2001-06-27 0:18 ` Mike Castle
2001-06-28 13:07 ` John Fremlin
2001-06-27 13:36 ` Marco Colombo
2001-06-27 3:55 ` Daniel Phillips
2001-06-27 14:09 ` Pozsar Balazs
2001-06-28 22:47 ` John Fremlin
2001-06-30 15:37 ` Pavel Machek
2001-07-10 10:34 ` David Woodhouse
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=0107051502510F.03760@starship \
--to=phillips@bonn-fries.net \
--cc=digiphaze@deming-os.org \
--cc=dmaas@dcine.com \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo@conectiva.com.br \
--cc=riel@conectiva.com.br \
/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