On Mon, Jun 05, 2006 at 03:17:20AM +0200, Voluspa wrote: > Patch: > http://web.comhem.se/~u46139355/storetmp/adaptive-readahead-v14-linux-2.6.17-rc5-git-updated-june-04-2006.patch It seems that the patch has some problem: + /* ra_size in its _steady_ state reflects thrashing threshold */ + if (page && ra_old + ra_old / 8 >= ra_size) + update_ra_thrash_bytes(mapping->backing_dev_info, ra_size); + + limit_rala(growth_limit, la_old, &ra_size, &la_size); The above statements was displaced, rendering the if() clause to fail all the time. That defeats the small file optimization, for ra_thrash_bytes will remain small. Voluspa, I attached an updated patch, including two more performance tunings. Please take it when you find time to do more benchmarks, thanks. I'd suggest that you(and other kind people interested in testing it out) to run blockdev --setra 2048 /dev/[sda/sda1/...] before each benchmark to ensure fairness and simplicity of analysis, thanks. Wu