All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Sims <ben.sims@citrix.com>
To: lvm-devel@redhat.com
Subject: Performance regression between V2_02_177 and V2_02_180
Date: Tue, 29 Oct 2019 08:44:39 +0000	[thread overview]
Message-ID: <1572338679419.1072@citrix.com> (raw)
In-Reply-To: <1571324396950.37136@citrix.com>

I'm not sure if anybody saw my original mail, there may have been a race condition with me actually joining the mailing list.


I can confirm the performance regression, is caused my async io, turning this off in the lvm.conf gets back my performance.

We work in a libaio intensive environment, so there is contention for libaio ring.


I'm wondering if libaio should be on by default?


Thanks,


Ben


________________________________
From: Ben Sims
Sent: 17 October 2019 15:59
To: lvm-devel@redhat.com
Subject: Performance regression between V2_02_177 and V2_02_180


Hi lvm-devel


I'm trying to analyze a performance regression in short lived commands such as lvchange.


V2_02_177


time /sbin/lvchange -ay /dev/abc/def


real    0m0.085s
user    0m0.000s
sys    0m0.013s


V2_02_180


time /sbin/lvchange -ay /dev/abc/def


real    0m0.115s
user    0m0.007s
sys    0m0.007s


I confirmed these measurements independently with perf over the course of a long test calling lvchange many times. The difference in individual calls is small but adds up.


The reg first occurred due to commit


commit db41fe6c5dab7ff66db9c0568f0e1e1b31657be3
Author: Alasdair G Kergon <agk@redhat.com>
Date:   Mon Jan 22 18:17:58 2018 +0000

    lvmcache: Use asynchronous I/O when scanning devices.


I notice that the new bcache is reading significantly more data 262144 bytes (two blocks of 131072 bytes from /dev/sda ) compared to 28672 bytes in 4k reads made in V2_02_177. Whats the rational for reading so much more data?


The extra overhead of this io estimated with strace does not appear to account for the slow down, but perhaps the processing of this data does?


I'm currently instrumenting the code, but thought i would ask on the mailing list.


Thanks,


Ben







-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/lvm-devel/attachments/20191029/902074bb/attachment.htm>

       reply	other threads:[~2019-10-29  8:44 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1571324396950.37136@citrix.com>
2019-10-29  8:44 ` Ben Sims [this message]
2019-10-29 14:58   ` Performance regression between V2_02_177 and V2_02_180 David Teigland
2019-10-30  9:34     ` Ben Sims
2019-10-30 14:07       ` David Teigland

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=1572338679419.1072@citrix.com \
    --to=ben.sims@citrix.com \
    --cc=lvm-devel@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.