All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joe Thornber <thornber@redhat.com>
To: Jagan Reddy <gjmsreddy@yahoo.com>
Cc: device-mapper development <dm-devel@redhat.com>
Subject: Re: dm-thin vs lvm performance
Date: Fri, 20 Jan 2012 17:03:35 +0000	[thread overview]
Message-ID: <20120120170335.GA10518@ubuntu> (raw)
In-Reply-To: <1326915054.99335.YahooMailNeo@web36407.mail.mud.yahoo.com>

Hi Jagan,

On Wed, Jan 18, 2012 at 11:30:54AM -0800, Jagan Reddy wrote:
> Joe,
>  Thanks for looking into the issue and running the tests and suggesting to use "direct" flag. I do see a difference with "direct" flag using dd. However the difference is significant when using bs=64M compared to bs=4k. 

I've spent a couple of days tinkering with aio-stress and thinp on
ramdisks.  More tests can be found here:

https://github.com/jthornber/thinp-test-suite/blob/master/ramdisk_tests.rb

It appears that wiping the device (ie. to ensure total allocation) is
causing the issue, and what's more this is a more general problem than
just thinp.

For instance see this test:

  def test_linear_aio_stress
    linear_table = Table.new(Linear.new(@volume_size, @data_dev, 0))
    @dm.with_dev(linear_table) do |linear_dev|
      aio_stress(linear_dev)
      wipe_device(linear_dev)   # cause slow down                                                    
      aio_stress(linear_dev)
    end
  end

For me, the first run of aio_stress manages a throughput of ~9G/s.
After the wipe, which is just a simple dd across the device,
performance drops to ~5.5 G/s.  Also throughput on the device under
the linear target also drops.  Permanently.

I don't know if this is specific to aio, or a more general slowdown.

Once we have got to the bottom of this I've written a couple of
experimental patches that we can try to boost read performance
further.

- Joe

  reply	other threads:[~2012-01-20 17:03 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-13  0:55 dm-thin vs lvm performance Jagan Reddy
2012-01-16 12:42 ` Joe Thornber
2012-01-18 19:30   ` Jagan Reddy
2012-01-20 17:03     ` Joe Thornber [this message]
2012-01-20 17:33       ` Joe Thornber
2012-01-20 18:07         ` Joe Thornber
2012-01-20 21:06           ` Jagan Reddy
2012-01-22 20:24             ` Joe Thornber
2012-01-24 23:58               ` Jagan Reddy
2012-01-27 14:58                 ` Joe Thornber
2012-01-28 18:54                   ` Jagan Reddy

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=20120120170335.GA10518@ubuntu \
    --to=thornber@redhat.com \
    --cc=dm-devel@redhat.com \
    --cc=gjmsreddy@yahoo.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.