2006-02-23 18:00:15

by Chris Boot

[permalink] [raw]
Subject: MD Raid 6: poor algorithm choice?

Hi all,

[4295106.360000] raid6: int32x1 714 MB/s
[4295106.381000] raid6: int32x2 742 MB/s
[4295106.403000] raid6: int32x4 632 MB/s
[4295106.429000] raid6: int32x8 523 MB/s
[4295106.453000] raid6: mmxx1 1476 MB/s
[4295106.474000] raid6: mmxx2 2500 MB/s
[4295106.500000] raid6: sse1x1 1375 MB/s
[4295106.521000] raid6: sse1x2 2339 MB/s
[4295106.524000] raid6: using algorithm sse1x2 (2339 MB/s)
[4295106.531000] md: raid6 personality registered for level 6

I just loaded the raid6 module for fun (might end up using it one day), and I
was surprised at its choice of algorithm. By the messages above, I would have
assumed it would choose the mmxx2 algorithm at 2500 MB/s instead of sse1x2 at
the slightly slower 2339 MB/s. This is probably entirely expected behaviour, but
why?

Cheers,
Chris

--
Chris Boot
[email protected]
http://www.bootc.net/


2006-02-23 21:09:22

by jurriaan

[permalink] [raw]
Subject: Re: MD Raid 6: poor algorithm choice?

From: Chris Boot <[email protected]>
Date: Thu, Feb 23, 2006 at 06:00:10PM +0000
> Hi all,
>
> [4295106.474000] raid6: mmxx2 2500 MB/s
> [4295106.521000] raid6: sse1x2 2339 MB/s
> [4295106.524000] raid6: using algorithm sse1x2 (2339 MB/s)
> [4295106.531000] md: raid6 personality registered for level 6
>
> I just loaded the raid6 module for fun (might end up using it one day), and
> I was surprised at its choice of algorithm. By the messages above, I would
> have assumed it would choose the mmxx2 algorithm at 2500 MB/s instead of
> sse1x2 at the slightly slower 2339 MB/s. This is probably entirely expected
> behaviour, but why?
>
Because it is more cache-efficient (allows the other code to run at a
higher speed). This comes up now and again, perhaps these messages
should be rephrased.

Jurriaan
--
Uhm, well, what we are talking about in privy terms, is the very latest
in front-wall fresh air orifices combined with a wide capacity gutter
installation below.
You mean crap out of the window?
Blackadder II
Debian (Unstable) GNU/Linux 2.6.16-rc3-mm1 5503 bogomips load load 0.01

2006-02-23 21:31:56

by Chris Boot

[permalink] [raw]
Subject: Re: MD Raid 6: poor algorithm choice?

[email protected] wrote:
> From: Chris Boot <[email protected]>
> Date: Thu, Feb 23, 2006 at 06:00:10PM +0000
>
>> Hi all,
>>
>> [4295106.474000] raid6: mmxx2 2500 MB/s
>> [4295106.521000] raid6: sse1x2 2339 MB/s
>> [4295106.524000] raid6: using algorithm sse1x2 (2339 MB/s)
>> [4295106.531000] md: raid6 personality registered for level 6
>>
>> I just loaded the raid6 module for fun (might end up using it one day), and
>> I was surprised at its choice of algorithm. By the messages above, I would
>> have assumed it would choose the mmxx2 algorithm at 2500 MB/s instead of
>> sse1x2 at the slightly slower 2339 MB/s. This is probably entirely expected
>> behaviour, but why?
>>
>>
> Because it is more cache-efficient (allows the other code to run at a
> higher speed). This comes up now and again, perhaps these messages
> should be rephrased.
>
I knew there would be a good reason for this, I just couldn't figure it
out from those messages. That's a very good explanation indeed, and as
you say, perhaps the messages should be updated.

Cheers,
Chris

--
Chris Boot
[email protected]