linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Hazelton <dhazelton@enter.net>
To: Andi Kleen <andi@firstfloor.org>
Cc: "Björn Steinbrink" <B.Steinbrink@gmx.de>,
	"Rene Herman" <rene.herman@gmail.com>,
	"Mike Galbraith" <efault@gmx.de>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Ingo Molnar" <mingo@elte.hu>,
	"Frank Kingswood" <frank@kingswood-consulting.co.uk>,
	"Nick Piggin" <nickpiggin@yahoo.com.au>,
	"Ray Lee" <ray-lk@madrabbit.org>,
	"Jesper Juhl" <jesper.juhl@gmail.com>,
	"ck list" <ck@vds.kolivas.org>, "Paul Jackson" <pj@sgi.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: RFT: updatedb "morning after" problem [was: Re: -mm merge plans for 2.6.23]
Date: Fri, 27 Jul 2007 21:10:46 -0400	[thread overview]
Message-ID: <200707272110.46860.dhazelton@enter.net> (raw)
In-Reply-To: <20070727232919.GA8960@one.firstfloor.org>

On Friday 27 July 2007 19:29:19 Andi Kleen wrote:
> > Any faults in that reasoning?
>
> GNU sort uses a merge sort with temporary files on disk. Not sure
> how much it keeps in memory during that, but it's probably less
> than 150MB. At some point the dirty limit should kick in and write back the
> data of the temporary files; so it's not quite the same as anonymous
> memory. But it's not that different given.

Yes, this should occur. But how many programs use temporary files like that? 
>From what I can tell FireFox and OpenOffice both keep all their data in 
memory, only using a single file for some buffering purposes. When they get 
pushed out by a memory hog (either short term or long term) it takes several 
seconds for them to be swapped back in. (I'm on a P4-1.3GHz machine with 1G 
of ram and rarely run more than four programs (Mail Client, XChat, FireFox 
and a console window) and I've seen this lag in FireFox when switching to it 
after starting OOo. I've also seen the same sort of lag when exiting OOo. 
I'll see about getting some numbers about this)

> It would be better to measure than to guess. At least Andrew's measurements
> on 128MB actually didn't show updatedb being really that big a problem.

I agree. As I've said previously, it isn't updatedb itself which causes the 
problem. It's the way the VFS cache seems to just expand and expand - to the 
point of evicting pages to make room for itself. However, I may be wrong 
about that - I haven't actually tested it for myself, just looked at the 
numbers and other information that has been posted in this thread.

> Perhaps some people have much more files or simply a less efficient
> updatedb implementation?

Yes, it could be the proliferation of files. It could also be some other sort 
of problem that is exposing a corner-case in the VFS cache or the MM. I, 
personally, am of the opinion that it is likely the aforementioned corner 
case for people reporting the "updatedb" problem. If it is, then 
swap-prefetch is just papering over the problem. However I do not have the 
knowledge and understanding of the subsystems involved to be able to do much 
more than make a (probably wrong) guess.

> I guess the people who complain here that loudly really need to supply
> some real numbers.

I've seen numerous "real numbers" posted about this. As was said earlier in 
the thread "every time numbers are posted they are claimed to be no good". 
But hey, nobodies perfect :)

Anyway, the discussion seems to be turning to the technical merits of 
swap-prefetch...

Now, a completely different question:
During the research (and lots of thinking) I've been doing while this thread 
has been going on I've often wondered why swap prefetch wasn't already in the 
kernel. The problem of slow swap-in has long been known, and, given current 
hardware, the optimal solution would be some sort of data prefetch - similar 
to what is done to speed up normal disk reads. Swap prefetch looks like it 
does exactly that. The algo could be argued over and/or improved (to suggest 
ways to do that I'd have to give it more than a 10 minute look) but it does 
provide a speed-up.

This speed increase will probably be enjoyed more by the home users, but the 
performance increase could also help on enterprise systems.

Now I'll be the first one to admit that there is a trade-off there - it will 
cause more power to be used because the disk's don't get a chance to spin 
down (or go through a cycle every time the prefetch system starts) but that 
could, potentially, be alleviated by having "laptop mode" switch it off.

(And no, I'm not claiming that it is perfect - but then, what is when its 
first merged into the kernel?)

DRH

-- 
Dialup is like pissing through a pipette. Slow and excruciatingly painful.

--
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>

  parent reply	other threads:[~2007-07-28  1:10 UTC|newest]

Thread overview: 227+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20070710013152.ef2cd200.akpm@linux-foundation.org>
2007-07-10 10:15 ` -mm merge plans for 2.6.23 Con Kolivas
2007-07-11  1:02   ` Matthew Hawkins
2007-07-11  1:14     ` [ck] " Andrew Morton
2007-07-11  1:52       ` André Goddard Rosa
2007-07-11  4:25         ` [ck] " André Goddard Rosa
2007-07-11  2:21       ` Ira Snyder
2007-07-11  3:37         ` timotheus
2007-07-11  2:54       ` Matthew Hawkins
2007-07-11  5:18         ` Nick Piggin
2007-07-11  5:47           ` Ray Lee
2007-07-11  5:54             ` Nick Piggin
2007-07-11  6:04               ` Ray Lee
2007-07-11  6:24                 ` Nick Piggin
2007-07-11  7:50                   ` swap prefetch (Re: -mm merge plans for 2.6.23) Ingo Molnar
2007-07-11  6:00             ` [ck] Re: -mm merge plans for 2.6.23 Nick Piggin
2007-07-11  3:59       ` Grzegorz Kulewski
2007-07-11 12:26       ` Kevin Winchester
2007-07-11 12:36         ` Jesper Juhl
2007-07-12 12:06       ` Kacper Wysocki
2007-07-12 12:35         ` Avuton Olrich
2007-07-22 23:11   ` Con Kolivas
2007-07-23 23:08   ` Jesper Juhl
2007-07-24  3:22     ` Nick Piggin
2007-07-24  4:53       ` Ray Lee
2007-07-24  5:10         ` Jeremy Fitzhardinge
2007-07-24  5:18           ` Ray Lee
2007-07-24  5:16         ` Nick Piggin
2007-07-24 16:11           ` -mm merge plans for 2.6.23 - Completely Fair Swap Prefetch Frank Kingswood
2007-07-25  0:59             ` [ck] " Matthew Hawkins
2007-07-24 16:15           ` -mm merge plans for 2.6.23 Ray Lee
2007-07-25  4:06             ` Nick Piggin
2007-07-25  4:55               ` Rene Herman
2007-07-25  5:00                 ` Nick Piggin
2007-07-25  5:12                 ` david
2007-07-25  5:30                   ` Rene Herman
2007-07-25  5:51                     ` david
2007-07-25  7:14                     ` Valdis.Kletnieks
2007-07-25  8:18                       ` Rene Herman
2007-07-25  8:28                         ` Ingo Molnar
2007-07-25  8:43                           ` Rene Herman
2007-07-25 10:53                             ` [ck] " Jos Poortvliet
2007-07-25 11:06                               ` Nick Piggin
2007-07-25 12:39                                 ` Jos Poortvliet
2007-07-25 13:30                               ` Rene Herman
2007-07-25 13:50                                 ` Ingo Molnar
2007-07-25 17:33                                   ` Satyam Sharma
2007-07-25 20:35                                     ` Ingo Molnar
2007-07-26  2:32                                       ` Bartlomiej Zolnierkiewicz
2007-07-26  4:13                                         ` Jeff Garzik
2007-07-26 10:22                                           ` Bartlomiej Zolnierkiewicz
2007-07-25 11:34                             ` Ingo Molnar
2007-07-25 11:40                               ` Rene Herman
2007-07-25 11:50                                 ` Ingo Molnar
2007-07-25 16:08                               ` Valdis.Kletnieks
2007-07-25 22:05                               ` Paul Jackson
2007-07-25 22:22                                 ` Zan Lynx
2007-07-25 22:27                                 ` Jesper Juhl
2007-07-25 22:28                                 ` [ck] " Michael Chang
2007-07-25 23:45                                 ` André Goddard Rosa
2007-07-25 16:02                     ` Ray Lee
2007-07-25 20:55                       ` Zan Lynx
2007-07-25 21:28                         ` Ray Lee
2007-07-26  1:15                       ` [ck] " Matthew Hawkins
2007-07-26  1:32                         ` Ray Lee
2007-07-26  3:16                           ` Matthew Hawkins
2007-07-26 22:30                         ` Michael Chang
2007-07-25  5:30                 ` Eric St-Laurent
2007-07-25  5:37                   ` Nick Piggin
2007-07-25  5:53                     ` david
2007-07-25  6:04                       ` Nick Piggin
2007-07-25  6:23                         ` david
2007-07-25  7:25                           ` Nick Piggin
2007-07-25  7:49                             ` Ingo Molnar
2007-07-25  7:58                               ` Nick Piggin
2007-07-25  8:15                                 ` Ingo Molnar
2007-07-25 10:41                         ` Jesper Juhl
2007-07-25  6:19                     ` [ck] " Matthew Hawkins
2007-07-25  6:30                       ` Nick Piggin
2007-07-25  6:47                       ` Mike Galbraith
2007-07-25  7:19                         ` Eric St-Laurent
2007-07-25  6:44                     ` Eric St-Laurent
2007-07-25 16:09                     ` Ray Lee
2007-07-26  4:57                       ` Andrew Morton
2007-07-26  5:53                         ` Nick Piggin
2007-07-26  6:06                           ` Andrew Morton
2007-07-26  6:17                             ` Nick Piggin
2007-07-26  6:33                         ` Ray Lee
2007-07-26  6:50                           ` Andrew Morton
2007-07-26  7:43                             ` Ray Lee
2007-07-26  7:59                               ` Nick Piggin
2007-07-28  0:24                             ` Matt Mackall
2007-07-26 14:19                         ` [ck] " Michael Chang
2007-07-26 18:13                           ` Andrew Morton
2007-07-26 22:04                             ` Dirk Schoebel
2007-07-26 22:33                               ` Dirk Schoebel
2007-07-26 23:27                                 ` Jeff Garzik
2007-07-26 23:29                                   ` david
2007-07-26 23:39                                     ` Jeff Garzik
2007-07-27  0:12                                       ` david
2007-07-28  0:12                         ` Matt Mackall
2007-07-28  3:42                         ` Daniel Cheng
2007-07-28  9:35                           ` Stefan Richter
2007-07-25 17:55                     ` Frank A. Kingswood
2007-07-25  6:09               ` [ck] " Matthew Hawkins
2007-07-25  6:18                 ` Nick Piggin
2007-07-25 16:19               ` Ray Lee
2007-07-25 20:46               ` Andi Kleen
2007-07-26  8:38                 ` Frank Kingswood
2007-07-26  9:20                   ` Ingo Molnar
2007-07-26  9:34                     ` Andrew Morton
2007-07-26  9:40                       ` RFT: updatedb "morning after" problem [was: Re: -mm merge plans for 2.6.23] Ingo Molnar
2007-07-26 10:09                         ` Andrew Morton
2007-07-26 10:24                           ` Ingo Molnar
2007-07-27  0:33                             ` [ck] " Matthew Hawkins
2007-07-30  9:33                               ` Helge Hafting
2007-07-26 10:27                           ` Ingo Molnar
2007-07-26 10:38                             ` Andrew Morton
2007-07-26 12:46                           ` Mike Galbraith
2007-07-26 18:05                             ` Andrew Morton
2007-07-27  5:12                               ` Mike Galbraith
2007-07-27  7:23                                 ` Mike Galbraith
2007-07-27  8:47                                   ` Andrew Morton
2007-07-27  8:54                                     ` Al Viro
2007-07-27  9:02                                       ` Andrew Morton
2007-07-27  9:40                                     ` Mike Galbraith
2007-07-27 10:00                                     ` Andrew Morton
2007-07-27 10:25                                       ` Mike Galbraith
2007-07-27 17:45                                         ` Daniel Hazelton
2007-07-27 18:16                                           ` Rene Herman
2007-07-27 19:43                                             ` david
2007-07-28  7:19                                               ` Rene Herman
2007-07-28  8:55                                                 ` david
2007-07-28 10:11                                                   ` Rene Herman
2007-07-28 11:21                                                     ` Alan Cox
2007-07-28 16:29                                                       ` Ray Lee
2007-07-28 21:03                                                       ` david
2007-07-29  8:11                                                       ` Rene Herman
2007-07-29 13:12                                                         ` Alan Cox
2007-07-29 14:07                                                           ` Rene Herman
2007-07-29 14:58                                                             ` Ray Lee
2007-07-29 14:59                                                               ` Rene Herman
2007-07-29 15:20                                                                 ` Ray Lee
2007-07-29 15:36                                                                   ` Rene Herman
2007-07-29 16:04                                                                     ` Ray Lee
2007-07-29 16:59                                                                       ` Rene Herman
2007-07-29 17:19                                                                         ` Ray Lee
2007-07-29 17:33                                                                           ` Rene Herman
2007-07-29 17:52                                                                             ` Ray Lee
2007-07-29 19:05                                                                               ` Rene Herman
2007-07-29 17:53                                                                             ` Alan Cox
2007-07-29 19:33                                                                   ` Paul Jackson
2007-07-29 20:00                                                                     ` Ray Lee
2007-07-29 20:18                                                                       ` Paul Jackson
2007-07-29 20:23                                                                         ` Ray Lee
2007-07-29 21:06                                                                       ` Daniel Hazelton
2007-07-28 21:00                                                     ` david
2007-07-29 10:09                                                       ` Rene Herman
2007-07-29 11:41                                                         ` david
2007-07-29 14:01                                                           ` Rene Herman
2007-07-29 21:19                                                             ` david
2007-08-06  2:14                                                               ` Nick Piggin
2007-08-06  2:22                                                                 ` david
2007-08-06  9:21                                                                   ` Nick Piggin
2007-08-06  9:55                                                                     ` Paolo Ciarrocchi
2007-07-28 15:56                                                   ` Daniel Hazelton
2007-07-28 21:06                                                     ` david
2007-07-28 21:48                                                       ` Daniel Hazelton
2007-07-27 20:28                                             ` Daniel Hazelton
2007-07-28  5:19                                               ` Rene Herman
2007-07-27 23:15                                             ` Björn Steinbrink
2007-07-27 23:29                                               ` Andi Kleen
2007-07-28  0:08                                                 ` Björn Steinbrink
2007-07-28  1:10                                                 ` Daniel Hazelton [this message]
2007-07-29 12:53                                                 ` Paul Jackson
2007-07-28  7:35                                               ` Rene Herman
2007-07-28  8:51                                                 ` Rene Herman
2007-07-27 22:08                                           ` Mike Galbraith
2007-07-27 22:51                                             ` Daniel Hazelton
2007-07-28  7:48                                               ` Mike Galbraith
2007-07-28 15:36                                                 ` Daniel Hazelton
2007-07-29  1:33                                     ` Rik van Riel
2007-07-29  3:39                                       ` Andrew Morton
2007-07-26 10:20                         ` Al Viro
2007-07-26 12:23                           ` Andi Kleen
2007-07-26 14:59                             ` Al Viro
2007-07-11 20:41                               ` Pavel Machek
2007-07-27 19:19                           ` Paul Jackson
2007-07-26 13:05                         ` Fredrik Klasson
2007-07-31 16:37               ` [ck] Re: -mm merge plans for 2.6.23 Matthew Hawkins
2007-08-06  2:11                 ` Nick Piggin
2007-07-25  4:46             ` david
2007-07-25  8:00               ` Rene Herman
2007-07-25  8:07                 ` david
2007-07-25  8:29                   ` Rene Herman
2007-07-25  8:31                     ` david
2007-07-25  8:33                       ` david
2007-07-25 10:58                         ` Rene Herman
2007-07-25 15:55               ` Ray Lee
2007-07-25 20:16                 ` Al Boldi
2007-07-27  0:28                   ` Magnus Naeslund
2007-07-24  5:18         ` Andrew Morton
2007-07-24  6:01           ` Ray Lee
2007-07-24  6:10             ` Andrew Morton
2007-07-24  9:38             ` Tilman Schmidt
2007-07-25  1:26           ` [ck] " Matthew Hawkins
2007-07-25  1:35             ` David Miller, Matthew Hawkins
2007-07-24  0:08   ` Con Kolivas
2007-07-11 11:39 ` buffered write patches, " Christoph Hellwig
2007-07-11 17:23   ` Andrew Morton
2007-07-11 12:23 ` lguest, " Christoph Hellwig
2007-07-11 15:45   ` Randy Dunlap
2007-07-11 18:04   ` Andrew Morton
2007-07-12  1:21   ` Rusty Russell
2007-07-12  2:28     ` David Miller, Rusty Russell
2007-07-12  2:48       ` Rusty Russell
2007-07-12  2:51         ` David Miller, Rusty Russell
2007-07-12  3:15           ` Rusty Russell
2007-07-12  3:35             ` David Miller, Rusty Russell
2007-07-12  4:24         ` Andrew Morton
2007-07-12  4:52           ` Rusty Russell
2007-07-12 11:10             ` Avi Kivity
2007-07-19 17:27             ` Christoph Hellwig
2007-07-20  3:27               ` Rusty Russell
2007-07-20  7:15                 ` Christoph Hellwig
2007-07-12  0:54 ` fault vs invalidate race (Re: -mm merge plans for 2.6.23) Nick Piggin
2007-07-12  2:31   ` block_page_mkwrite? (Re: fault vs invalidate race (Re: -mm merge plans for 2.6.23)) David Chinner
2007-07-12  2:42     ` Nick Piggin

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=200707272110.46860.dhazelton@enter.net \
    --to=dhazelton@enter.net \
    --cc=B.Steinbrink@gmx.de \
    --cc=akpm@linux-foundation.org \
    --cc=andi@firstfloor.org \
    --cc=ck@vds.kolivas.org \
    --cc=efault@gmx.de \
    --cc=frank@kingswood-consulting.co.uk \
    --cc=jesper.juhl@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mingo@elte.hu \
    --cc=nickpiggin@yahoo.com.au \
    --cc=pj@sgi.com \
    --cc=ray-lk@madrabbit.org \
    --cc=rene.herman@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