Re: gvinum raid5 performance seems slow



On Sunday, 29 October 2006 at 23:05:32 -0800, R. B. Rid*** wrote:
--- Greg 'groggy' Lehey <grog@xxxxxxxxxxx> wrote:
"Sufficiently large data blocks" equates to several megabytes.
Currently MAXPHYS, the largest transfer request that would get to the
bio layer, is 131072 bytes. This would imply a stripe size of not
more than 32 kB for a five disk array, which is unrealistically small.

I did consider this optimization, but it would only work if Vinum were
first to buffer multiple requests, and there are all sorts of
reliability issues there. For example, you'd have to lie about the
first few requests that were only buffered and not actually sent out
to disk. Possibly it should be done anyway.

I did it that way in my graid5 class:
http://home.tiscali.de/cmdr_faako/geom_raid5.tbz

I would have taken a look at it if the sources had been directly web
viewable.

The source might look somehow incomprehensible,

Heh. I know the feeling :-)

but it seems to be quite stable (on amd64 and i386)...


I tried to benchmark with a 3 disk array:
Single disk: 30MB/sec write speed
graid5 device: 20MB/sec write speed

Can you give more details? Stripe size, request size, number of
concurrent accessors, etc.?

I would be interested in other benchmarks about it.

Try rawio.

Greg
--
See complete headers for address and phone numbers.

Attachment: pgpaX7h6Vd2kH.pgp
Description: PGP signature