• Steven Pratt's avatar
    [PATCH] readahead: fix initial window size calculation · aed75ff3
    Steven Pratt authored
    The current current get_init_ra_size is not optimal across different IO
    sizes and max_readahead values.  Here is a quick summary of sizes computed
    under current design and under the attached patch.  All of these assume 1st
    IO at offset 0, or 1st detected sequential IO.
    
    	32k max, 4k request
    
    	old         new
    	-----------------
    	 8k        8k
    	16k       16k
    	32k       32k
    
    	128k max, 4k request
    	old         new
    	-----------------
    	32k         16k
    	64k         32k
    	128k        64k
    	128k       128k
    
    	128k max, 32k request
    	old         new
    	-----------------
    	32k         64k    <-----
    	64k        128k
    	128k       128k
    
    	512k max, 4k request
    	old         new
    	-----------------
    	4k         32k     <----
    	16k        64k
    	64k       128k
    	128k      256k
    	512k      512k
    
    Cc: Oleg Nesterov <oleg@tv-sign.ru>
    Cc: Steven Pratt <slpratt@austin.ibm.com>
    Cc: Ram Pai <linuxram@us.ibm.com>
    Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    aed75ff3
readahead.c 16.9 KB