Re: [GIT PATCH 0/2] stripe-queue for 2.6.23 consideration

2007-07-23 Thread Andrew Morton
On Sun, 22 Jul 2007 02:44:52 -0700
Dan Williams <[EMAIL PROTECTED]> wrote:

> The stripe-queue patches are showing solid performance improvement.
> 
>   git://lost.foo-projects.org/~dwillia2/git/iop md-for-linus

It's a slippery little tree that one.  I was using md-accel-linus, only I
nuked it because it was empty, or was causing problems or something.

Oh well, I shall switch to md-for-linus and shall see what happens.
-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [GIT PATCH 0/2] stripe-queue for 2.6.23 consideration

2007-07-23 Thread Neil Brown
On Sunday July 22, [EMAIL PROTECTED] wrote:
> Andrew, Neil,
> 
> The stripe-queue patches are showing solid performance improvement.
> 
>   git://lost.foo-projects.org/~dwillia2/git/iop md-for-linus
> 
>  drivers/md/raid5.c | 1484 
> 
>  include/linux/raid/raid5.h |   87 +++-
>  2 files changed, 1164 insertions(+), 407 deletions(-)
> 
> Dan Williams (2):
>   raid5: add the stripe_queue object for tracking raid io requests (take2)
>   raid5: use stripe_queues to prioritize the "most deserving" requests 
> (take4)
> 
> I initially considered them 2.6.24 material but after fixing the sync+io
> data corruption regression, fixing the large 'stripe_cache_size' values
> performance regression, and seeing how well it performed on my IA
> platform I would like them to be considered for 2.6.23.  That being said
> I have not yet tested expand operations or raid6.
 ^^

I think we really shouldn't aim for 2.6.23 at this stage.  The merge
window is shut, and this is a little more that a bug fix.  It's sounds
great though.  I'd really like to hear more success reports, and will
do my own review a testing either this week or next.

Certainly good for -mm.

NeilBrown
-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[GIT PATCH 0/2] stripe-queue for 2.6.23 consideration

2007-07-22 Thread Dan Williams
Andrew, Neil,

The stripe-queue patches are showing solid performance improvement.

git://lost.foo-projects.org/~dwillia2/git/iop md-for-linus

 drivers/md/raid5.c | 1484 
 include/linux/raid/raid5.h |   87 +++-
 2 files changed, 1164 insertions(+), 407 deletions(-)

Dan Williams (2):
  raid5: add the stripe_queue object for tracking raid io requests (take2)
  raid5: use stripe_queues to prioritize the "most deserving" requests 
(take4)

I initially considered them 2.6.24 material but after fixing the sync+io
data corruption regression, fixing the large 'stripe_cache_size' values
performance regression, and seeing how well it performed on my IA
platform I would like them to be considered for 2.6.23.  That being said
I have not yet tested expand operations or raid6.

Without any tuning a 4 disk (SATA) RAID5 array can reach 190MB/s.  Previously
performance was around 90MB/s.  Blktrace data confirms that less reads are
occurring and more writes are being merged.

$ mdadm --create /dev/md0 /dev/sd[abcd] -n 4 -l 5 --assume-clean
$ blktrace /dev/sd[abcd] &
$ for i in `seq 1 3`; do dd if=/dev/zero of=/dev/md0 bs=1024k count=1024; done
$ fg ^C
$ blkparse /dev/sda /dev/sdb /dev/sdc /dev/sdd

=pre-patch=
Total (sda):
 Reads Queued:   3,136,   12,544KiB  Writes Queued: 187,068,  748,272KiB
 Read Dispatches:  676,   12,384KiB  Write Dispatches:   30,949,  737,052KiB
 Reads Requeued: 0   Writes Requeued: 0
 Reads Completed:  662,   12,080KiB  Writes Completed:   30,630,  736,964KiB
 Read Merges:2,452,9,808KiB  Write Merges:  155,885,  623,540KiB
 IO unplugs: 1   Timer unplugs:   1

Total (sdb):
 Reads Queued:   1,541,6,164KiB  Writes Queued:  91,224,  364,896KiB
 Read Dispatches:  323,6,184KiB  Write Dispatches:   14,603,  335,528KiB
 Reads Requeued: 0   Writes Requeued: 0
 Reads Completed:  303,6,124KiB  Writes Completed:   13,650,  328,520KiB
 Read Merges:1,209,4,836KiB  Write Merges:   76,080,  304,320KiB
 IO unplugs: 0   Timer unplugs:   0

Total (sdc):
 Reads Queued:   1,372,5,488KiB  Writes Queued:  82,995,  331,980KiB
 Read Dispatches:  297,5,280KiB  Write Dispatches:   13,258,  304,020KiB
 Reads Requeued: 0   Writes Requeued: 0
 Reads Completed:  268,4,948KiB  Writes Completed:   12,320,  298,668KiB
 Read Merges:1,067,4,268KiB  Write Merges:   69,154,  276,616KiB
 IO unplugs: 0   Timer unplugs:   0

Total (sdd):
 Reads Queued:   1,383,5,532KiB  Writes Queued:  80,186,  320,744KiB
 Read Dispatches:  307,5,008KiB  Write Dispatches:   13,241,  298,400KiB
 Reads Requeued: 0   Writes Requeued: 0
 Reads Completed:  276,4,888KiB  Writes Completed:   12,677,  294,324KiB
 Read Merges:1,050,4,200KiB  Write Merges:   66,772,  267,088KiB
 IO unplugs: 0   Timer unplugs:   0


=post-patch=
Total (sda):
 Reads Queued: 117,  468KiB  Writes Queued:  71,511,  286,044KiB
 Read Dispatches:   17,  308KiB  Write Dispatches:8,412,  699,204KiB
 Reads Requeued: 0   Writes Requeued: 0
 Reads Completed:6,   96KiB  Writes Completed:3,704,  321,552KiB
 Read Merges:   96,  384KiB  Write Merges:   67,880,  271,520KiB
 IO unplugs:14   Timer unplugs:  15

Total (sdb):
 Reads Queued:  88,  352KiB  Writes Queued:  56,687,  226,748KiB
 Read Dispatches:   11,  288KiB  Write Dispatches:8,142,  686,412KiB
 Reads Requeued: 0   Writes Requeued: 0
 Reads Completed:8,  184KiB  Writes Completed:2,770,  257,740KiB
 Read Merges:   76,  304KiB  Write Merges:   54,005,  216,020KiB
 IO unplugs:16   Timer unplugs:  17

Total (sdc):
 Reads Queued:  60,  240KiB  Writes Queued:  61,863,  247,452KiB
 Read Dispatches:7,  248KiB  Write Dispatches:8,302,  699,832KiB
 Reads Requeued: 0   Writes Requeued: 0
 Reads Completed:5,  144KiB  Writes Completed:2,907,  258,900KiB
 Read Merges:   50,  200KiB  Write Merges:   58,926,  235,704KiB
 IO unplugs:20   Timer unplugs:  23

Total (sdd):
 Reads Queued:  61,  244KiB  Writes Queued:  66,330,  265,320KiB
 Read Dispatches:   10,  180KiB  Write Dispatches:9,326,  694,012KiB
 Reads Requeued: 0   Writes Requeued: 0
 Reads Completed:4,  112KiB  Writes Completed:3,562,  285,912KiB
 Read Merges:   47,  188KiB  Writ