Messages in this thread | | | Date | Tue, 2 Feb 2010 11:59:03 -0800 (PST) | From | david@lang ... | Subject | Re: [PATCH 10/11] readahead: dont do start-of-file readahead after lseek() |
| |
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
| |