All of lore.kernel.org
 help / color / mirror / Atom feed
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

  reply	other threads:[~2011-03-10 14:02 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.