From: Mustafa Mesanovic <mume@linux.vnet.ibm.com>
To: Mike Snitzer <snitzer@redhat.com>, dm-devel@redhat.com
Cc: Neil Brown <neilb@suse.de>,
akpm@linux-foundation.org, cotte@de.ibm.com,
heiko.carstens@de.ibm.com, linux-kernel@vger.kernel.org,
ehrhardt@linux.vnet.ibm.com,
"Alasdair G. Kergon" <agk@redhat.com>,
Jeff Moyer <jmoyer@redhat.com>
Subject: Re: [PATCH v3] dm stripe: implement merge method
Date: Thu, 10 Mar 2011 15:02:55 +0100 [thread overview]
Message-ID: <4D78DA0F.4000001@linux.vnet.ibm.com> (raw)
In-Reply-To: <20110308164849.GA5692@redhat.com>
On 03/08/2011 05:48 PM, Mike Snitzer wrote:
> On Tue, Mar 08 2011 at 5:29am -0500,
> Mustafa Mesanovic<mume@linux.vnet.ibm.com> wrote:
>
>> On 03/08/2011 03:21 AM, Mike Snitzer wrote:
>>
>>> Here is a revised version of your patch that uses the relatively new
>>> stripe_map_sector(), removes an unnecessary cast, and a few other
>>> cleanups.
>>>
>>> This v3 should work as well as your v2 but should be suitable for
>>> upstream inclusion -- authorship of the change is still attributed to
>>> you as I only updated the code slightly. I'd appreciate it if you could
>>> verify your config still performs as expected.
>> Mike,
>>
>> your changes are working well and performing even a bit better.
> Good to know.
>
>> Are there any further comments from others, or can consider putting it
>> upstream.
> I chatted with Alasdair and one concern he had was: does the existence
> of stripe_merge() ever hurt due to the fact that stripe_map_sector() is
> performed twice (once for .merge and again for .map)? May be that a
> really small chuck_size proves to be more problematic but using a small
> chunk_size generally isn't productive to begin with.
>
> In any case, it clearly helps your workload.
>
> Could you explain your config in more detail?
> - what is your chunk_size?
> - how many stripes (how many mpath devices)?
> - what is the performance, of your test workload, of a single underlying
> mpath device?
>
> And, in particular, what is your test workload?
> - What is the nature of your IO (are you using a particular tool)?
> - Are you using AIO?
> - How many threads?
> - Are you driving deep queue depths? Etc.
>
> I have various configs that I'll be testing to help verify the benefit.
> The only other change Alasdair request is that the target version should
> be bumped to 1.4 (rather than 1.3.2).
>
> Given that I can put some time to this now: we should be able to sort
> all this out for upstream inclusion in 2.6.39.
>
> Thanks,
> Mike
Mike,
the setup that I have used to verify and check upon the changes
consisted of:
- Benchmark
iozone (seq write, seq read, random read and write),
filesize 2000m, with 32 processes (no AIO used).
- Disk-Setup
2 disks (queue_depth=192) -> each disk with 8 paths
-> multipathed (multibus, rr_min_io=1)
And a striped LVM out of these two (chunk_size=64KiB).
The benchmark then runs on this LV.
In detail: I was previosly working on a 2.6.32.x-stable kernel, thats
where I created the stripe_merge function for. There I have seen
improvements up to 3x -> ~600MiB -> ~1800MiB
With the git-kernel only 1.25x better when applying the patch, but its still
significantly better!
~990MiB -> ~1300MiB
A single mpath device has ~1300MiB throughput.
Regards,
Mustafa
next prev parent reply other threads:[~2011-03-10 14:03 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-27 11:19 [RFC][PATCH] dm: improve read performance Mustafa Mesanovic
2010-12-27 11:54 ` Neil Brown
2010-12-27 12:23 ` Mustafa Mesanovic
2011-03-07 10:10 ` Mustafa Mesanovic
2011-03-08 2:21 ` [PATCH v3] dm stripe: implement merge method Mike Snitzer
2011-03-08 10:29 ` Mustafa Mesanovic
2011-03-08 16:48 ` Mike Snitzer
2011-03-10 14:02 ` Mustafa Mesanovic [this message]
2011-03-12 22:42 ` Mike Snitzer
2011-03-14 11:54 ` Mustafa Mesanovic
2011-03-14 14:33 ` Mike Snitzer
2011-03-16 20:21 ` [PATCH v4] " Mike Snitzer
2011-03-17 5:12 ` [RFC][PATCH] dm: improve read performance Nikanth Karthikesan
2011-03-17 13:08 ` Mike Snitzer
2011-03-18 4:59 ` Nikanth Karthikesan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D78DA0F.4000001@linux.vnet.ibm.com \
--to=mume@linux.vnet.ibm.com \
--cc=agk@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=cotte@de.ibm.com \
--cc=dm-devel@redhat.com \
--cc=ehrhardt@linux.vnet.ibm.com \
--cc=heiko.carstens@de.ibm.com \
--cc=jmoyer@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=neilb@suse.de \
--cc=snitzer@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox