[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 0/7] 9pfs: Twalk optimization
From: |
Christian Schoenebeck |
Subject: |
Re: [PATCH v2 0/7] 9pfs: Twalk optimization |
Date: |
Fri, 04 Jun 2021 20:23:21 +0200 |
On Freitag, 4. Juni 2021 18:31:28 CEST Greg Kurz wrote:
> On Fri, 4 Jun 2021 17:48:49 +0200
>
> Christian Schoenebeck <qemu_oss@crudebyte.com> wrote:
> > This patch set reduces latency of Twalk handling by reducing the amount of
> > thread hops, similar to previous Treaddir optimization.
> >
> > The performance gain of this patch set is not as spectacular as previously
> > with Treaddir, but there is definitely a measurable difference.
> >
> > The actualy performance optimization is patch 7. With the benchmark of
> > patch 2, the runtime of the Twalk test was cut in half. In real world
> > tests
> > I measured a performance gain (i.e. running an entire guest OS, and hence
> > mixed with all other kinds of 9p requests) of about 2%, again measured in
> > a
> > mix, not concentrated on Twalk alone.
> >
> > v1 -> v2:
> > * Added a separate [NEW PATCH 1] for fixing not_same_qid() semantic.
>
> Strangely, patch 1 appears between patch 3 and 4 in my email client.
My bad, I forgot to take care about the time stamps of the individual patches
this time.
> > * Code style: use sizeof(var-name) instead of sizeof(type-name)
> >
> > [PATCH 3].
> >
> > * Split out dropping fid_to_qid() into separate [PATCH 4].
> >
> > * Split out replacing not_same_qid() by same_stat_id() into separate
> >
> > [PATCH 5].
> >
> > * Split out dropping root_qid into separate [PATCH 6].
>
> I could have a look at all the patches except the last one. LGTM.
> You can add my R-b for patches 1 and 3 to 6.
>
> Reviewed-by: Greg Kurz <groug@kaod.org>
Queued patches 1, 3..6 on 9p.next:
https://github.com/cschoenebeck/qemu/commits/9p.next
Thanks!
> I'll try to find some time for patch 7 next week.
>
Twalk can be tricky, so no hurry! It takes what it takes.
> > Christian Schoenebeck (7):
> > 9pfs: fix not_same_qid()
> > 9pfs: Twalk benchmark
> > 9pfs: capture root stat
> > 9pfs: drop fid_to_qid()
> > 9pfs: replace not_same_qid() by same_stat_id()
> > 9pfs: drop root_qid
> > 9pfs: reduce latency of Twalk
> >
> > hw/9pfs/9p.c | 128 +++++++++++++++++++++++------------
> > hw/9pfs/9p.h | 2 +-
> > tests/qtest/virtio-9p-test.c | 30 ++++++++
> > 3 files changed, 116 insertions(+), 44 deletions(-)
Best regards,
Christian Schoenebeck
- [PATCH v2 0/7] 9pfs: Twalk optimization, Christian Schoenebeck, 2021/06/04
- Re: [PATCH v2 0/7] 9pfs: Twalk optimization, Greg Kurz, 2021/06/04
- Re: [PATCH v2 0/7] 9pfs: Twalk optimization,
Christian Schoenebeck <=
- [PATCH v2 2/7] 9pfs: Twalk benchmark, Christian Schoenebeck, 2021/06/04
- [PATCH v2 6/7] 9pfs: drop root_qid, Christian Schoenebeck, 2021/06/04
- [PATCH v2 4/7] 9pfs: drop fid_to_qid(), Christian Schoenebeck, 2021/06/04
- [PATCH v2 3/7] 9pfs: capture root stat, Christian Schoenebeck, 2021/06/04
- [PATCH v2 7/7] 9pfs: reduce latency of Twalk, Christian Schoenebeck, 2021/06/04
- [PATCH v2 1/7] 9pfs: fix not_same_qid(), Christian Schoenebeck, 2021/06/04
- [PATCH v2 5/7] 9pfs: replace not_same_qid() by same_stat_id(), Christian Schoenebeck, 2021/06/04