Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755604Ab0BBUdb (ORCPT ); Tue, 2 Feb 2010 15:33:31 -0500 Received: from mail.lang.hm ([64.81.33.126]:43703 "EHLO bifrost.lang.hm" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751445Ab0BBUda (ORCPT ); Tue, 2 Feb 2010 15:33:30 -0500 Date: Tue, 2 Feb 2010 11:59:03 -0800 (PST) From: david@lang.hm X-X-Sender: dlang@asgard.lang.hm To: Linus Torvalds cc: Olivier Galibert , Wu Fengguang , Andrew Morton , Jens Axboe , Peter Zijlstra , Linux Memory Management List , linux-fsdevel@vger.kernel.org, LKML Subject: Re: [PATCH 10/11] readahead: dont do start-of-file readahead after lseek() In-Reply-To: Message-ID: References: <20100202152835.683907822@intel.com> <20100202153317.644170708@intel.com> <20100202181321.GB75577@dspnet.fr.eu.org> <20100202184831.GD75577@dspnet.fr.eu.org> User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 986 Lines: 21 On Tue, 2 Feb 2010, Linus Torvalds wrote: > Rememebr: read-ahead is about filling the empty IO spaces _between_ reads, > and turning many smaller reads into one bigger one. If you only have a > single big read, read-ahead cannot help. > > Also, keep in mind that read-ahead is not always a win. It can be a huge > loss too. Which is why we have _heuristics_. They fundamentally cannot > catch every case, but what they aim for is to do a good job on average. as a note from the field, I just had an application that needed to be changed because it did excessive read-ahead. it turned a 2 min reporting run into a 20 min reporting run because for this report the access was really random and the app forced large read-ahead. David Lang -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/