tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: RAIDframe write coalescing



On Mon, Dec 10, 2012 at 12:58:49PM +0100, Edgar Fu? wrote:
> Another RAIDframe question:
> 
> Suppose I have a level 5 RAIDframe set accross five components. I choose a
> SPSU value of 8, i.e. 16kB as a stripe size.
> Now, I write a suitably aligned 64kB chunk (i.e. four stripes worth) of data.
> Will RAIDframe issue four 4kB writes to each component or a single 16kB write?

Four 4KB writes.  If you issue four sequential 16K writes, it won't gather
those, either.  This is frustrating because at present, that's roughly
what our filesystem code does when it clusters -- it will often write out
up to 256K sequentially, but broken into 64K pieces.

What RAIDframe *could* do would be to keep all the transactions in-flight
and finish them all after a brief delay to attempt to gather full stripes.
How to calculate the delay is, I think, pretty well understood, and it is
something most RAID controllers can do.  But though RAIDframe is pretty
darned smart, it is not smart in that particular way.

-- 
 Thor Lancelot Simon                                          
tls%panix.com@localhost

        It's very complicated.  It's very cumbersome.  There's a
        lot of numbers involved with it.


Home | Main Index | Thread Index | Old Index