linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "G. Richard Bellamy" <rbellamy@pteradigm.com>
To: linux-btrfs@vger.kernel.org
Subject: btrfs and iostat - how do I measure the live performance of my btrsf filesystems?
Date: Mon, 4 Aug 2014 16:01:17 -0700	[thread overview]
Message-ID: <CADw2B2PA-_PKvWduHPcObdXtxMO3ttyBkqtNB=p=GX4oH5dt_A@mail.gmail.com> (raw)

I apologize if this has already been addressed, regardless of whether
or not it's a n00b question, I'm stumped and am looking for some
guidance.

Is iostat a viable measure of btrfs performance?
I've got the following environment:
---------------------------------------------------------------------
2014-08-04 11:56:10
root@a i ~ # uname -a
Linux a 3.14.15-1-lts #1 SMP Thu Jul 31 22:42:44 UTC 2014 x86_64 GNU/Linux
2014-08-04 13:05:44
root@a i ~ # btrfs --version
Btrfs v3.14.2-dirty
2014-08-04 13:05:44
root@a i ~ # btrfs fi show
Label: 'system'  uuid: 06acfd0f-314d-457f-ba00-f96bf5b94a02
Total devices 2 FS bytes used 20.68GiB
devid    1 size 476.94GiB used 30.03GiB path /dev/sda
devid    2 size 476.94GiB used 30.03GiB path /dev/sdb

Label: 'data'  uuid: 10cc711b-8c8c-457c-91b1-d8ea4ef4e8d8
Total devices 4 FS bytes used 1.02TiB
devid    1 size 558.91GiB used 558.91GiB path /dev/sdc
devid    2 size 558.91GiB used 558.89GiB path /dev/sdd
devid    3 size 558.91GiB used 558.89GiB path /dev/sde
devid    4 size 558.91GiB used 558.89GiB path /dev/sdf

Btrfs v3.14.2-dirty
---------------------------------------------------------------------
Here's my iostat output:
---------------------------------------------------------------------
2014-08-04 13:26:39
root@a i ~ # iostat
Linux 3.14.15-1-lts (eanna) 08/04/2014 _x86_64_ (24 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           6.93    0.34    2.82    0.40    0.00   89.50

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sdb              22.40        38.75       540.65     836356   11668224
sda              22.41        40.32       540.65     870084   11668224
sdg               0.02         0.14         0.00       2987         24
sdc              17.42       232.10       368.66    5009076    7956248
sdd              16.64       196.53       357.23    4241392    7709640
sdf              16.30       196.35       367.01    4237644    7920700
sde              17.12       232.16       355.58    5010384    7674092
sdh               0.01         0.22         0.00       4820          0

How do I boil those numbers down to something meaningful, so I can get
an idea of the throughput in situ?

Presumably the answer is based on the normal read/write arithmetic
associated with RAID:
* raid1 read is nx (no lower than 1x), write is 1x
* raid10 read is nx (no lower than (n/spans)x), write is (n/spans)x

But as a practical matter, how does one go from the formulae to iostat
output to a metric? For instance:
Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sdb              22.40        38.75       540.65     836356   11668224
sda              22.41        40.32       540.65     870084   11668224

Do I take this to mean that for my raid1 read throughput is possibly
38.75 + 40.32 = 79.07 kB_read/s, and write is (540.65 + 540.65)/2 =
540.65 kB_write/s?

Though raid5&6 are yet to be fully baked, I imagine the answer for
those levels can become quite complex.

Thanks for your time,
-rb

             reply	other threads:[~2014-08-04 23:01 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-04 23:01 G. Richard Bellamy [this message]
  -- strict thread matches above, loose matches on Subject: below --
2014-08-05 14:14 btrfs and iostat - how do I measure the live performance of my btrsf filesystems? Tomasz Chmielewski
2014-08-05 22:06 ` G. Richard Bellamy
2014-08-05 23:39   ` Tomasz Chmielewski
2014-08-22 21:36     ` G. Richard Bellamy
2014-08-23  3:24       ` Duncan
2014-08-23  4:13         ` G. Richard Bellamy

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='CADw2B2PA-_PKvWduHPcObdXtxMO3ttyBkqtNB=p=GX4oH5dt_A@mail.gmail.com' \
    --to=rbellamy@pteradigm.com \
    --cc=linux-btrfs@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).