Re: raid5 high cpu usage during reads - oprofile results
From: dean gaudet <hidden>
Date: 2006-03-26 05:38:17
From: dean gaudet <hidden>
Date: 2006-03-26 05:38:17
On Sat, 25 Mar 2006, Alex Izvorski wrote:
http://linuxraid.pastebin.com/621363 - oprofile annotated assembly
it looks to me like a lot of time is spent in __find_stripe() ... i wonder if the hash is working properly. in raid5.c you could try changing #define stripe_hash(conf, sect) (&((conf)->stripe_hashtbl[((sect) >> STRIPE_SHIFT) & HASH_MASK])) to #define stripe_hash(conf, sect) (&((conf)->stripe_hashtbl[(((sect) >> STRIPE_SHIFT) ^ ((sect) >> (2*STRIPE_SHIFT))) & HASH_MASK])) or maybe try using jhash_1word((sect) >> STRIPE_SHIFT, 0) ... -dean