login
Header Space

 
 

Re: [00/17] Large Blocksize Support V3

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: David Chinner <dgc@...>
Cc: Christoph Lameter <clameter@...>, <linux-kernel@...>, Mel Gorman <mel@...>, William Lee Irwin III <wli@...>, Jens Axboe <jens.axboe@...>, Badari Pulavarty <pbadari@...>, Maxim Levitsky <maximlevitsky@...>, Nick Piggin <nickpiggin@...>
Date: Friday, April 27, 2007 - 3:11 pm

On Sat, 28 Apr 2007 03:34:32 +1000 David Chinner <dgc@sgi.com> wrote:


1-disk and 2-disk read throughput fell by an improbable amount, which makes
me cautious about the other numbers.

Your annotation says "blocksize".  Are you really varying the fs blocksize
here, or did you mean "pagesize"?

What worries me here is that we have inefficient code, and increasing the
pagesize amortises that inefficiency without curing it.

If so, it would be better to fix the inefficiencies, so that 4k pagesize
will also benefit.

For example, see __do_page_cache_readahead().  It does a read_lock() and a
page allocation and a radix-tree lookup for each page.  We can vastly
improve that.

Step 1:

- do a read-lock

- do a radix-tree walk to work out how many pages are missing

- read-unlock

- allocate that many pages

- read_lock()

- populate all the pages.

- read_unlock

- if any pages are left over, free them

- if we ended up not having enough pages, redo the whole thing.

that will reduce the number of read_lock()s, read_unlock()s and radix-tree
descents by a factor of 32 or so in this testcase.  That's a lot, and it's
something we (Nick ;)) should have done ages ago.

Step 2 is pretty obvious: __do_page_cache_readahead() is now in an ideal
position to parse its list of missing-pgoff_t's and to perform higher-order
allocations to satisfy any power-of-2-sized-and-aligned holes in the
pagecache.  Fix up your lameo HBA for reads.


Step 1 is a glaring inefficiency, which large PAGE_CACHE_SIZE attempts to
work around for some subset of cases.  It's better to fix the inefficiency
at its core.  There are others.  Kernel profiles, please.
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[00/17] Large Blocksize Support V3, , (Tue Apr 24, 6:21 pm)
Re: [00/17] Large Blocksize Support V3, Maxim Levitsky, (Sat Apr 28, 12:39 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Mon Apr 30, 1:23 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Thu Apr 26, 10:04 pm)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Thu Apr 26, 10:27 pm)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Thu Apr 26, 10:53 pm)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Fri Apr 27, 12:20 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 1:15 am)
Re: [00/17] Large Blocksize Support V3, Theodore Tso, (Fri Apr 27, 12:55 pm)
Re: [00/17] Large Blocksize Support V3, Nicholas Miell, (Fri Apr 27, 1:32 pm)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Fri Apr 27, 2:12 pm)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Fri Apr 27, 2:09 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 3:04 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Fri Apr 27, 4:03 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Fri May 4, 9:31 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Mon May 7, 12:58 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Mon May 7, 2:56 am)
RE: [00/17] Large Blocksize Support V3, Weigert, Daniel, (Mon May 7, 11:17 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri May 4, 12:11 pm)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 4:48 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Fri May 4, 8:57 am)
Re: [00/17] Large Blocksize Support V3, Theodore Tso, (Fri Apr 27, 12:45 pm)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Fri May 4, 9:33 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Mon May 7, 12:29 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Mon May 7, 12:48 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Mon May 7, 1:27 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Mon May 7, 2:43 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Mon May 7, 12:06 pm)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Mon May 7, 1:29 pm)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Mon May 7, 2:49 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Mon May 7, 3:06 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Tue May 8, 4:49 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 1:49 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 2:55 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Fri Apr 27, 9:44 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 3:15 pm)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Fri Apr 27, 10:21 pm)
Re: [00/17] Large Blocksize Support V3, Paul Mackerras, (Fri Apr 27, 7:05 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 7:58 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 7:41 am)
Re: [00/17] Large Blocksize Support V3, Paul Mackerras, (Fri Apr 27, 8:14 am)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Fri Apr 27, 9:42 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 8:36 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 8:12 am)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Fri Apr 27, 9:37 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 8:25 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 12:48 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Fri Apr 27, 9:39 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 10:27 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Sat Apr 28, 4:16 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Fri Apr 27, 10:39 pm)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 10:50 pm)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Fri Apr 27, 11:16 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 3:22 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 3:29 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 3:35 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 3:43 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 3:19 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 3:26 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Fri Apr 27, 12:36 pm)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Fri Apr 27, 1:34 pm)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Fri Apr 27, 3:11 pm)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Fri Apr 27, 11:17 pm)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 12:56 am)
Re: [00/17] Large Blocksize Support V3, Alan Cox, (Sat Apr 28, 5:43 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 5:58 am)
Re: [00/17] Large Blocksize Support V3, Alan Cox, (Sat Apr 28, 6:21 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 6:25 am)
Re: [00/17] Large Blocksize Support V3, Alan Cox, (Sat Apr 28, 7:29 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Sat Apr 28, 10:37 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Sat Apr 28, 1:08 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 1:36 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Sat Apr 28, 2:24 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 2:52 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Mon Apr 30, 1:30 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 11:49 pm)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 9:43 pm)
Re: [00/17] Large Blocksize Support V3, Peter Zijlstra, (Sat Apr 28, 4:04 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 4:22 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Sat Apr 28, 10:09 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 2:26 pm)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Sat Apr 28, 3:19 pm)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 5:28 pm)
Re: [00/17] Large Blocksize Support V3, Peter Zijlstra, (Sat Apr 28, 4:32 am)
Re: [00/17] Large Blocksize Support V3, Andrew Morton, (Sat Apr 28, 4:55 am)
Re: [00/17] Large Blocksize Support V3, Peter Zijlstra, (Sat Apr 28, 5:36 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Fri Apr 27, 8:01 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Fri Apr 27, 4:37 am)
Re: [00/17] Large Blocksize Support V3 (mmap conceptual disc..., Christoph Lameter, (Thu Apr 26, 11:47 pm)
Re: [00/17] Large Blocksize Support V3, Maxim Levitsky, (Thu Apr 26, 2:50 pm)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 12:51 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 1:05 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 1:44 am)
Re: [00/17] Large Blocksize Support V3, Pierre Ossman, (Sat Apr 28, 6:55 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Sat Apr 28, 11:39 am)
Re: [00/17] Large Blocksize Support V3, Alan Cox, (Thu Apr 26, 9:28 am)
Re: [00/17] Large Blocksize Support V3, Matt Mackall, (Sun Apr 29, 10:12 am)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 9:30 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:37 am)
Re: [00/17] Large Blocksize Support V3, Mel Gorman, (Thu Apr 26, 5:16 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 2:38 am)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Thu Apr 26, 11:58 am)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 12:05 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Thu Apr 26, 12:16 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:46 am)
Re: [00/17] Large Blocksize Support V3, Mel Gorman, (Thu Apr 26, 6:06 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 10:47 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 2:57 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 1:37 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:40 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 2:53 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 3:07 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 3:15 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 3:22 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Thu Apr 26, 10:49 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 3:42 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:13 pm)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 6:15 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Thu Apr 26, 10:53 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 2:21 pm)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Thu Apr 26, 8:32 pm)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 6:22 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Fri Apr 27, 8:58 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 9:06 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Fri Apr 27, 10:49 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:16 pm)
Re: [00/17] Large Blocksize Support V3, Andy Whitcroft, (Thu Apr 26, 8:37 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 11:08 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Thu Apr 26, 11:28 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Thu Apr 26, 11:19 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Thu Apr 26, 10:18 am)
Re: [00/17] Large Blocksize Support V3, Mel Gorman, (Thu Apr 26, 6:48 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Thu Apr 26, 3:04 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 3:07 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 3:11 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 3:17 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 3:28 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 3:45 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:10 pm)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 6:08 am)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Thu Apr 26, 2:38 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 6:10 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:07 pm)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 2:45 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:59 pm)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 3:21 pm)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Thu Apr 26, 9:50 am)
Re: [00/17] Large Blocksize Support V3, Jeremy Higdon, (Thu Apr 26, 8:19 pm)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 11:38 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Thu Apr 26, 11:58 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 5:46 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Thu Apr 26, 10:40 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 2:50 am)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Thu Apr 26, 12:11 pm)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 6:38 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 1:49 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:03 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 2:03 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Thu Apr 26, 2:09 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 2:12 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:28 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 2:29 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 2:35 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 2:39 pm)
Re: [00/17] Large Blocksize Support V3, Mel Gorman, (Thu Apr 26, 4:22 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Fri Apr 27, 1:16 am)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Thu Apr 26, 8:21 pm)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 3:35 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 3:42 pm)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Fri Apr 27, 12:05 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Fri Apr 27, 6:26 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Fri Apr 27, 9:51 am)
Re: [00/17] Large Blocksize Support V3, Christoph Hellwig, (Thu Apr 26, 2:24 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 2:24 pm)
Re: [00/17] Large Blocksize Support V3, Mel Gorman, (Thu Apr 26, 4:40 am)
Re: [00/17] Large Blocksize Support V3, Nick Piggin, (Thu Apr 26, 4:55 am)
Re: [00/17] Large Blocksize Support V3, Mel Gorman, (Thu Apr 26, 6:30 am)
Re: [00/17] Large Blocksize Support V3, Eric W. Biederman, (Thu Apr 26, 6:54 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Thu Apr 26, 1:58 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Thu Apr 26, 2:02 pm)
Re: [00/17] Large Blocksize Support V3, Mel Gorman, (Thu Apr 26, 8:23 am)
Re: [00/17] Large Blocksize Support V3, H. Peter Anvin, (Tue Apr 24, 8:47 pm)
Re: [00/17] Large Blocksize Support V3, Mel Gorman, (Wed Apr 25, 9:28 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Wed Apr 25, 11:23 am)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Wed Apr 25, 7:35 am)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Wed Apr 25, 11:36 am)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Wed Apr 25, 1:53 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Wed Apr 25, 2:03 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Wed Apr 25, 2:05 pm)
Re: [00/17] Large Blocksize Support V3, Christoph Lameter, (Wed Apr 25, 2:14 pm)
Re: [00/17] Large Blocksize Support V3, Jens Axboe, (Wed Apr 25, 2:16 pm)
Re: [00/17] Large Blocksize Support V3, William Lee Irwin III, (Tue Apr 24, 11:11 pm)
Re: [00/17] Large Blocksize Support V3, Jörn, (Tue Apr 24, 8:46 pm)
Re: [00/17] Large Blocksize Support V3, Badari Pulavarty, (Wed Apr 25, 6:46 pm)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Wed Apr 25, 9:14 pm)
Re: [00/17] Large Blocksize Support V3, David Chinner, (Wed Apr 25, 9:17 pm)
speck-geostationary