[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for bloc
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer |
Date: |
Tue, 5 Mar 2019 12:12:07 +0100 |
User-agent: |
Mutt/1.11.3 (2019-02-01) |
Am 05.03.2019 um 12:04 hat Pavel Dovgalyuk geschrieben:
> > > > > @@ -1349,8 +1351,8 @@ static BlockAIOCB *blk_aio_prwv(BlockBackend
> > > > > *blk, int64_t offset,
> > int
> > > > bytes,
> > > > >
> > > > > acb->has_returned = true;
> > > > > if (acb->rwco.ret != NOT_DONE) {
> > > > > - aio_bh_schedule_oneshot(blk_get_aio_context(blk),
> > > > > - blk_aio_complete_bh, acb);
> > > > > + replay_bh_schedule_oneshot_event(blk_get_aio_context(blk),
> > > > > + blk_aio_complete_bh, acb);
> > > > > }
> > > >
> > > > This, and a few other places that you convert, are in fast paths and add
> > > > some calls that are unnecessary for non-replay cases.
> > >
> > > I don't think that this can make a noticeable slowdown, but we can run
> > > the tests if you want.
> > > We have the test suite which performs disk-intensive computation.
> > > It was created to measure the effect of running BH callbacks through
> > > the virtual timer infrastructure.
> >
> > I think this requires quite fast storage to possibly make a difference.
>
> True.
>
> > Or if you don't have that, maybe a ramdisk or even a null-co:// backend
> > could do the trick. Maybe null-co:// is actually the best option.
>
> We've got tests with file copying and compression on qcow2 disks.
> How the null backend can be applied there?
With qcow2, it can't really. null-co:// would work for running something
like fio directly against a virtual disk, without any image format
involved. Getting the image format out of the way makes things even a
little bit faster.
Maybe we should run a micro-benchmark fio with null-co just in addition
to your higher level tests?
> > Anyway, if it's not too much work for you, running some tests would be
> > good.
> >
> > > > I wonder if we could make replay optional in ./configure and then make
> > > > replay_bh_schedule_oneshot_event() a static inline function that can get
> > > > optimised away at compile time if the feature is disabled.
> > >
> > > It is coupled with icount. However, some icount calls are also lie on
> > > the fast paths and are completely useless when icount is not enabled.
> >
> > Well, the common fast path is KVM, which doesn't have icount at all, so
> > that might make it less critical. :-)
>
> I see.
>
> > I get your point, though maybe that just means that both should be
> > possible to be disabled at configure time.
>
> Right, it may be reasonable for some TCG use cases.
> This could be a separate patch set, because everything changes.
Yes, I agree.
Kevin
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Kevin Wolf, 2019/03/04
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/03/04
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Kevin Wolf, 2019/03/05
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/03/05
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer,
Kevin Wolf <=
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/03/06
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Kevin Wolf, 2019/03/06
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/03/06
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Kevin Wolf, 2019/03/06
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/03/06
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Kevin Wolf, 2019/03/06
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/03/06
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/03/06
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/03/13
- Re: [Qemu-devel] [PATCH v13 19/25] replay: add BH oneshot event for block layer, Kevin Wolf, 2019/03/14