[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no t
From: |
Christian Schoenebeck |
Subject: |
Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool |
Date: |
Thu, 12 Nov 2020 12:00:03 +0100 |
On Donnerstag, 12. November 2020 10:06:37 CET Miklos Szeredi wrote:
> On Fri, Nov 6, 2020 at 11:35 PM Vivek Goyal <vgoyal@redhat.com> wrote:
> > On Fri, Nov 06, 2020 at 08:33:50PM +0000, Venegas Munoz, Jose Carlos
wrote:
> > > Hi Vivek,
> > >
> > > I have tested with Kata 1.12-apha0, the results seems that are better
> > > for the use fio config I am tracking.
> > >
> > > The fio config does randrw:
> > >
> > > fio --direct=1 --gtod_reduce=1 --name=test
> > > --filename=random_read_write.fio --bs=4k --iodepth=64 --size=200M
> > > --readwrite=randrw --rwmixread=75>
> > Hi Carlos,
> >
> > Thanks for the testing.
> >
> > So basically two conclusions from your tests.
> >
> > - for virtiofs, --thread-pool-size=0 is performing better as comapred
> >
> > to --thread-pool-size=1 as well as --thread-pool-size=64. Approximately
> > 35-40% better.
> >
> > - virtio-9p is still approximately 30% better than virtiofs
> >
> > --thread-pool-size=0.
> >
> > As I had done the analysis that this particular workload (mixed read and
> > write) is bad with virtiofs because after every write we are invalidating
> > attrs and cache so next read ends up fetching attrs again. I had posted
> > patches to gain some of the performance.
> >
> > https://lore.kernel.org/linux-fsdevel/20200929185015.GG220516@redhat.com/
> >
> > But I got the feedback to look into implementing file leases instead.
>
> Hmm, the FUSE_AUTO_INVAL_DATA feature is buggy, how about turning it
> off for now? 9p doesn't have it, so no point in enabling it for
> virtiofs by default.
>
> Also I think some confusion comes from cache=auto being the default
> for virtiofs. Not sure what the default is for 9p, but comparing
> default to default will definitely not be apples to apples since this
> mode is nonexistent in 9p.
The default for 9p is cache=none.
That should be changed to cache=mmap being default IMO, because if users stick
with the default setting 'none', it breaks software relying on mmap() calls.
>
> 9p:cache=none <-> virtiofs:cache=none
> 9p:cache=loose <-> virtiofs:cache=always
>
> "9p:cache=mmap" and "virtiofs:cache=auto" have no match.
What does 'auto' do exactly?
>
> Untested patch attached.
>
> Thanks,
> Miklos
Best regards,
Christian Schoenebeck
- [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Vivek Goyal, 2020/11/05
- Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Venegas Munoz, Jose Carlos, 2020/11/17
- Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Christian Schoenebeck, 2020/11/17
- Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Vivek Goyal, 2020/11/17
- Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Venegas Munoz, Jose Carlos, 2020/11/23
- Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Vivek Goyal, 2020/11/17
- Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Venegas Munoz, Jose Carlos, 2020/11/23
- Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Vivek Goyal, 2020/11/18
- Re: [Virtio-fs] [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Miklos Szeredi, 2020/11/23
Re: [PATCH] virtiofsd: Use --thread-pool-size=0 to mean no thread pool, Dr. David Alan Gilbert, 2020/11/09