[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.00.1001081139490.7821@localhost.localdomain>
Date: Fri, 8 Jan 2010 11:42:38 -0800 (PST)
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Andi Kleen <andi@...stfloor.org>
cc: Christoph Lameter <cl@...ux-foundation.org>,
Peter Zijlstra <peterz@...radead.org>,
KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>,
Minchan Kim <minchan.kim@...il.com>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"hugh.dickins" <hugh.dickins@...cali.co.uk>,
Nick Piggin <nickpiggin@...oo.com.au>,
Ingo Molnar <mingo@...e.hu>
Subject: Re: [RFC][PATCH 6/8] mm: handle_speculative_fault()
On Fri, 8 Jan 2010, Linus Torvalds wrote:
>
> Another fact is simply that you shouldn't write your app so that it needs
> to do millions of page faults per second.
Side note: an app with lots of threads, and that needs to fault in lots of
pages at startup time, and has performance problems, can - and should -
likely use interfaces that are _designed_ for that.
There's things like madvise(WILLNEED) etc, which can batch up the filling
of a memory area.
If you're doing a performance-sensitive application with hundreds of
threads, and hundreds of gigabytes of data, you had better know about
simple concepts like "batch fill", rather than whine about "oh my, my
totally special-case app takes a few seconds to start because I'M A
F*CKING MORON AND DID EVERYTHING WRONG".
Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists