From: Wang Jianchao <jianchao.wan9@gmail.com>
To: Tejun Heo <tj@kernel.org>
Cc: axboe@kernel.dk, jbacik@fb.com, bvanassche@acm.org,
linux-block@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 13/13] blk: introduce iostat per cgroup module
Date: Thu, 13 Jan 2022 10:40:27 +0800 [thread overview]
Message-ID: <faafdf29-6d8b-82a8-c69d-4ab3e623b489@gmail.com> (raw)
In-Reply-To: <Yd82dJMxdQkssu4k@slm.duckdns.org>
On 2022/1/13 4:13 上午, Tejun Heo wrote:
> On Mon, Jan 10, 2022 at 05:10:46PM +0800, Wang Jianchao wrote:
>> From: Wang Jianchao <wangjianchao@kuaishou.com>
>>
>> iostat can only track the whole device's io statistics. This patch
>> introduces iostat per cgroup based on blk-rq-qos framework which
>> can track bw, iops, queue latency and device latency and distinguish
>> regular or meta data. The blkio.iostat per cgroup output in following
>> format,
>> vda-data bytes iops queue_lat dev_lat [ditto] [ditto]
>> meta \___________ ______________/ | |
>> v v v
>> read write discard
>> In particular, the blkio.iostat of root only output the statistics
>> of IOs from root cgroup. However, the non-root blkio.iostat outputs
>> all of the children cgroups. With meta stats in root cgroup, hope
>> to observe the performace of fs metadata.
> > I think using bpf is a way better solution for this kind of detailed
> statistics.
bw/iops/lat of data or metadata of one cgroup is very basic statistics
which kernel could provide especially when cgroup is employed everywhere.
And we love to collect them all the time during the instance in cgroup is
running.
> What if I want to know what portions are random, or the
> distribution of IO sizes?
This looks really detailed statistics :)
> Do I add another rq-qos policy or add another
> interface file with interface versioning?
This iostat module can not provide all the kinds of statistics we want
but just some very basic things. And maybe it can provide better hooks
to install the ebpf program to collect detailed statistics.
Best regards
Jianchao
next prev parent reply other threads:[~2022-01-13 2:40 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-10 9:10 [PATCH 0/13] blk: make blk-rq-qos policies pluggable and modular Wang Jianchao
2022-01-10 9:10 ` [PATCH 01/13] blk: make blk-rq-qos support pluggable and modular policy Wang Jianchao
2022-01-13 1:49 ` kernel test robot
2022-01-13 3:52 ` Wang Jianchao
2022-01-10 9:10 ` [PATCH 02/13] blk-wbt: make wbt pluggable Wang Jianchao
2022-01-10 9:10 ` [PATCH 03/13] blk: export following interfaces Wang Jianchao
2022-01-10 9:10 ` [PATCH 04/13] cgroup: export following two interfaces Wang Jianchao
2022-01-10 9:10 ` [PATCH 05/13] blk-iolatency: make iolatency pluggable and modular Wang Jianchao
2022-01-10 9:10 ` [PATCH 06/13] blk: remove unused BLK_RQ_IO_DATA_LEN Wang Jianchao
2022-01-10 9:10 ` [PATCH 07/13] blk: use standalone macro to control bio.bi_iocost_cost Wang Jianchao
2022-01-10 9:10 ` [PATCH 08/13] blk-iocost: make iocost pluggable and modular Wang Jianchao
2022-01-10 9:10 ` [PATCH 09/13] blk: rename ioprio.c to ioprio-common.c Wang Jianchao
2022-01-10 9:10 ` [PATCH 10/13] blk-ioprio: make ioprio pluggable and modular Wang Jianchao
2022-01-10 9:10 ` [PATCH 11/13] blk: remove unused interfaces of blk-rq-qos Wang Jianchao
2022-01-10 9:10 ` [PATCH 12/13] blk: make request able to carry blkcg_gq Wang Jianchao
2022-01-10 9:10 ` [PATCH 13/13] blk: introduce iostat per cgroup module Wang Jianchao
2022-01-12 20:13 ` Tejun Heo
2022-01-13 2:40 ` Wang Jianchao [this message]
2022-01-13 17:01 ` Tejun Heo
2022-01-14 2:01 ` Wang Jianchao
2022-01-10 17:36 ` [PATCH 0/13] blk: make blk-rq-qos policies pluggable and modular Christoph Hellwig
2022-01-11 1:53 ` Wang Jianchao
2022-01-11 3:25 ` Bart Van Assche
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=faafdf29-6d8b-82a8-c69d-4ab3e623b489@gmail.com \
--to=jianchao.wan9@gmail.com \
--cc=axboe@kernel.dk \
--cc=bvanassche@acm.org \
--cc=jbacik@fb.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tj@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
Powered by JetHome