From: Mike Snitzer <snitzer@redhat.com>
To: Sage Weil <sage@inktank.com>
Cc: Ugis <ugis22@gmail.com>,
"ceph-devel@vger.kernel.org" <ceph-devel@vger.kernel.org>,
"ceph-users@ceph.com" <ceph-users@ceph.com>,
linux-lvm@redhat.com
Subject: Re: poor read performance on rbd+LVM, LVM overload
Date: Thu, 17 Oct 2013 11:18:29 -0400 [thread overview]
Message-ID: <20131017151828.GB28859@redhat.com> (raw)
In-Reply-To: <alpine.DEB.2.00.1310160914360.22271@cobra.newdream.net>
On Wed, Oct 16 2013 at 12:16pm -0400,
Sage Weil <sage@inktank.com> wrote:
> Hi,
>
> On Wed, 16 Oct 2013, Ugis wrote:
> >
> > What could make so great difference when LVM is used and what/how to
> > tune? As write performance does not differ, DM extent lookup should
> > not be lagging, where is the trick?
>
> My first guess is that LVM is shifting the content of hte device such that
> it no longer aligns well with the RBD striping (by default, 4MB). The
> non-aligned reads/writes would need to touch two objects instead of
> one, and dd is generally doing these synchronously (i.e., lots of
> waiting).
>
> I'm not sure what options LVM provides for aligning things to the
> underlying storage...
LVM will consume the underlying storage's device limits. So if rbd
establishes appropriate minimum_io_size and optimal_io_size that reflect
the striping config LVM will pick it up -- provided
'data_alignment_detection' is enabled in lvm.conf (which it is by
default).
Ugis, please provide the output of:
RBD_DEVICE=<rbd device name>
pvs -o pe_start $RBD_DEVICE
cat /sys/block/$RBD_DEVICE/queue/minimum_io_size
cat /sys/block/$RBD_DEVICE/queue/optimal_io_size
The 'pvs' command will tell you where LVM aligned the start of the data
area (which follows the LVM metadata area). Hopefully it reflects what
was published in sysfs for rbd's striping.
WARNING: multiple messages have this Message-ID (diff)
From: Mike Snitzer <snitzer@redhat.com>
To: Sage Weil <sage@inktank.com>
Cc: "ceph-devel@vger.kernel.org" <ceph-devel@vger.kernel.org>,
Ugis <ugis22@gmail.com>,
linux-lvm@redhat.com, "ceph-users@ceph.com" <ceph-users@ceph.com>
Subject: Re: [linux-lvm] poor read performance on rbd+LVM, LVM overload
Date: Thu, 17 Oct 2013 11:18:29 -0400 [thread overview]
Message-ID: <20131017151828.GB28859@redhat.com> (raw)
In-Reply-To: <alpine.DEB.2.00.1310160914360.22271@cobra.newdream.net>
On Wed, Oct 16 2013 at 12:16pm -0400,
Sage Weil <sage@inktank.com> wrote:
> Hi,
>
> On Wed, 16 Oct 2013, Ugis wrote:
> >
> > What could make so great difference when LVM is used and what/how to
> > tune? As write performance does not differ, DM extent lookup should
> > not be lagging, where is the trick?
>
> My first guess is that LVM is shifting the content of hte device such that
> it no longer aligns well with the RBD striping (by default, 4MB). The
> non-aligned reads/writes would need to touch two objects instead of
> one, and dd is generally doing these synchronously (i.e., lots of
> waiting).
>
> I'm not sure what options LVM provides for aligning things to the
> underlying storage...
LVM will consume the underlying storage's device limits. So if rbd
establishes appropriate minimum_io_size and optimal_io_size that reflect
the striping config LVM will pick it up -- provided
'data_alignment_detection' is enabled in lvm.conf (which it is by
default).
Ugis, please provide the output of:
RBD_DEVICE=<rbd device name>
pvs -o pe_start $RBD_DEVICE
cat /sys/block/$RBD_DEVICE/queue/minimum_io_size
cat /sys/block/$RBD_DEVICE/queue/optimal_io_size
The 'pvs' command will tell you where LVM aligned the start of the data
area (which follows the LVM metadata area). Hopefully it reflects what
was published in sysfs for rbd's striping.
next prev parent reply other threads:[~2013-10-17 15:18 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-16 14:46 poor read performance on rbd+LVM, LVM overload Ugis
2013-10-16 14:46 ` [linux-lvm] " Ugis
2013-10-16 16:16 ` Sage Weil
2013-10-16 16:16 ` [linux-lvm] " Sage Weil
[not found] ` <alpine.DEB.2.00.1310160914360.22271-vIokxiIdD2AQNTJnQDzGJqxOck334EZe@public.gmane.org>
2013-10-17 9:06 ` David McBride
2013-10-17 9:06 ` [linux-lvm] " David McBride
2013-10-17 15:18 ` Mike Snitzer [this message]
2013-10-17 15:18 ` Mike Snitzer
[not found] ` <20131017151828.GB28859-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-10-18 7:56 ` Ugis
2013-10-18 7:56 ` [linux-lvm] " Ugis
2013-10-19 0:01 ` Sage Weil
2013-10-19 0:01 ` [linux-lvm] " Sage Weil
[not found] ` <alpine.DEB.2.00.1310181657151.19763-vIokxiIdD2AQNTJnQDzGJqxOck334EZe@public.gmane.org>
2013-10-20 15:18 ` Ugis
2013-10-20 15:18 ` [linux-lvm] " Ugis
[not found] ` <CAE63xUO4ZrzObMFeQ=FXGFnqpwWsjCiiDr2_VhOt91h=djofYw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-20 18:21 ` Josh Durgin
2013-10-20 18:21 ` [linux-lvm] [ceph-users] " Josh Durgin
2013-10-21 3:58 ` Sage Weil
2013-10-21 3:58 ` [linux-lvm] " Sage Weil
2013-10-21 14:11 ` Christoph Hellwig
2013-10-21 14:11 ` [linux-lvm] " Christoph Hellwig
[not found] ` <20131021141147.GA30189-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2013-10-21 15:01 ` Mike Snitzer
2013-10-21 15:01 ` [linux-lvm] " Mike Snitzer
[not found] ` <20131021150129.GA28099-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-10-21 15:06 ` Mike Snitzer
2013-10-21 15:06 ` [linux-lvm] " Mike Snitzer
2013-10-21 16:02 ` Sage Weil
2013-10-21 16:02 ` [linux-lvm] " Sage Weil
[not found] ` <alpine.DEB.2.00.1310210853140.29488-vIokxiIdD2AQNTJnQDzGJqxOck334EZe@public.gmane.org>
2013-10-21 17:48 ` Mike Snitzer
2013-10-21 17:48 ` [linux-lvm] " Mike Snitzer
[not found] ` <20131021174850.GA29416-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-10-21 18:05 ` Sage Weil
2013-10-21 18:05 ` [linux-lvm] " Sage Weil
2013-10-21 18:06 ` Christoph Hellwig
2013-10-21 18:06 ` [linux-lvm] " Christoph Hellwig
[not found] ` <20131021180616.GA7196-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2013-10-21 18:27 ` Mike Snitzer
2013-10-21 18:27 ` [linux-lvm] " Mike Snitzer
2013-10-30 14:53 ` Ugis
2013-10-30 14:53 ` [linux-lvm] " Ugis
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=20131017151828.GB28859@redhat.com \
--to=snitzer@redhat.com \
--cc=ceph-devel@vger.kernel.org \
--cc=ceph-users@ceph.com \
--cc=linux-lvm@redhat.com \
--cc=sage@inktank.com \
--cc=ugis22@gmail.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.