Raid 5 performance

Ralph Doncaster ralph-Zd07PnzKK1IAvxtiuMwx3w at public.gmane.org
Wed Sep 22 14:40:24 UTC 2004


On Wed, 22 Sep 2004, John Macdonald wrote:

> On Wed, Sep 22, 2004 at 08:59:19AM -0400, Ralph Doncaster wrote:
> > On Wed, 22 Sep 2004, Lennart Sorensen wrote:
> > > I well agree that if you are writing a multiple of the size of data that
> > > fits acress the number of disks, you gain a bit from having 2&n data
> > > disks, although if I had 16k chunks and 3 data drives and wrote 48k, I
> > > would get the same benefit.
> >
> > No.  You're wrong again.  But you'll have to figure it out on your own;
> > I'm not wasting any more of my time...
>
> Actually, he's right.
No, you're wrong too.

> If a write exactly spans all of the data
> disks in a strip, you can use that data to compute the parity
> without reading any old values from the disk first.
This is a correct statement, but you falsely imply that is what happens
with Len's 48KB write.

> If a write
> spans some, but not all, of the data disks in a stripe, then
> data must be read from the disk to compute the new parity info.
This is a correct statement, and this is what happens when you write 16KB
chunks to a stripe of 4 disks (3 data + 1 parity).  The Linux RAID code
doesn't coalesce writes of multiple chunks (i.e. 3x 16KB chunks) to
optimize away the theoretically unecessary read for parity computation.

-Ralph

--
The Toronto Linux Users Group.      Meetings: http://tlug.ss.org
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://tlug.ss.org/subscribe.shtml





More information about the Legacy mailing list