cvs commit: src/sys/geom/raid3 g_raid3.c g_raid3.h g_raid3_ctl.c
src/sbin/geom/class/raid3 geom_raid3.c graid3.8
Pawel Jakub Dawidek
pjd at FreeBSD.org
Sat Aug 21 11:11:47 PDT 2004
pjd 2004-08-21 18:11:46 UTC
FreeBSD src repository
Modified files:
sys/geom/raid3 g_raid3.c g_raid3.h g_raid3_ctl.c
sbin/geom/class/raid3 geom_raid3.c graid3.8
Log:
Implement new reading algorithm, which will use parity component for reading
as well, even if device is in complete state.
I observe 40% of speed-up with this option for random read operations,
but slowdown for sequential reads.
Basically, without this option reading from a RAID3 device built from 5
components (c0-c4) looks like this:
Request no. Used components
1 c0+c1+c2+c3
2 c0+c1+c2+c3
3 c0+c1+c2+c3
With the new feature:
Request no. Used components
1 c0+c1+c2+c3
2 (c1^c2^c3^c4)+c1+c2+c3
3 c0+(c0^c2^c3^c4)+c2+c3
4 c0+c1+(c0^c1^c3^c4)+c3
5 c0+c1+c2+(c0^c1^c2^c4)
6 c0+c1+c2+c3
[...]
Revision Changes Path
1.3 +14 -3 src/sbin/geom/class/raid3/geom_raid3.c
1.2 +16 -6 src/sbin/geom/class/raid3/graid3.8
1.7 +107 -95 src/sys/geom/raid3/g_raid3.c
1.2 +7 -2 src/sys/geom/raid3/g_raid3.h
1.2 +29 -5 src/sys/geom/raid3/g_raid3_ctl.c
More information about the cvs-all
mailing list