All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vivek Goyal <vgoyal@redhat.com>
To: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: "Venegas Munoz,
	Jose Carlos" <jose.carlos.venegas.munoz@intel.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"cdupontd@redhat.com" <cdupontd@redhat.com>,
	virtio-fs-list <virtio-fs@redhat.com>,
	"Shinde, Archana M" <archana.m.shinde@intel.com>
Subject: Re: [Virtio-fs] virtiofs vs 9p performance(Re: tools/virtiofs: Multi threading seems to hurt performance)
Date: Tue, 29 Sep 2020 09:17:53 -0400	[thread overview]
Message-ID: <20200929131753.GB220516@redhat.com> (raw)
In-Reply-To: <20200925124139.GJ2873@work-vm>

On Fri, Sep 25, 2020 at 01:41:39PM +0100, Dr. David Alan Gilbert wrote:

[..]
> So I'm sitll beating 9p; the thread-pool-size=1 seems to be great for
> read performance here.
> 

Hi Dave,

I spent some time making changes to virtiofs-tests so that I can test
a mix of random read and random write workload. That testsuite runs
a workload 3 times and reports the average. So I like to use it to
reduce run to run variation effect.

So I ran following to mimic carlos's workload.

$ ./run-fio-test.sh test -direct=1 -c <test-dir> fio-jobs/randrw-psync.job >
testresults.txt

$ ./parse-fio-results.sh testresults.txt

I am using a SSD at the host to back these files. Option "-c" always
creates new files for testing.

Following are my results in various configurations. Used cache=mmap mode
for 9p and cache=auto (and cache=none) modes for virtiofs. Also tested
9p default as well as msize=16m. Tested virtiofs both with exclusive
as well as shared thread pool.

NAME                    WORKLOAD                Bandwidth       IOPS            
9p-mmap-randrw          randrw-psync            42.8mb/14.3mb   10.7k/3666      
9p-mmap-msize16m        randrw-psync            42.8mb/14.3mb   10.7k/3674      
vtfs-auto-ex-randrw     randrw-psync            27.8mb/9547kb   7136/2386       
vtfs-auto-sh-randrw     randrw-psync            43.3mb/14.4mb   10.8k/3709      
vtfs-none-sh-randrw     randrw-psync            54.1mb/18.1mb   13.5k/4649      


- Increasing msize to 16m did not help with performance for this workload.
- virtiofs exclusive thread pool ("ex"), is slower than 9p.
- virtiofs shared thread pool ("sh"), matches the performance of 9p.
- virtiofs cache=none mode is faster than cache=auto mode for this
  workload.

Carlos, I am looking at more ways to optimize it further for virtiofs.
In the mean time I think switching to "shared" thread pool should
bring you very close to 9p in your setup I think.

Thanks
Vivek


WARNING: multiple messages have this Message-ID (diff)
From: Vivek Goyal <vgoyal@redhat.com>
To: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: "Venegas Munoz,
	Jose Carlos" <jose.carlos.venegas.munoz@intel.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"cdupontd@redhat.com" <cdupontd@redhat.com>,
	virtio-fs-list <virtio-fs@redhat.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	"Shinde, Archana M" <archana.m.shinde@intel.com>
Subject: Re: virtiofs vs 9p performance(Re: tools/virtiofs: Multi threading seems to hurt performance)
Date: Tue, 29 Sep 2020 09:17:53 -0400	[thread overview]
Message-ID: <20200929131753.GB220516@redhat.com> (raw)
In-Reply-To: <20200925124139.GJ2873@work-vm>

On Fri, Sep 25, 2020 at 01:41:39PM +0100, Dr. David Alan Gilbert wrote:

[..]
> So I'm sitll beating 9p; the thread-pool-size=1 seems to be great for
> read performance here.
> 

Hi Dave,

I spent some time making changes to virtiofs-tests so that I can test
a mix of random read and random write workload. That testsuite runs
a workload 3 times and reports the average. So I like to use it to
reduce run to run variation effect.

So I ran following to mimic carlos's workload.

$ ./run-fio-test.sh test -direct=1 -c <test-dir> fio-jobs/randrw-psync.job >
testresults.txt

$ ./parse-fio-results.sh testresults.txt

I am using a SSD at the host to back these files. Option "-c" always
creates new files for testing.

Following are my results in various configurations. Used cache=mmap mode
for 9p and cache=auto (and cache=none) modes for virtiofs. Also tested
9p default as well as msize=16m. Tested virtiofs both with exclusive
as well as shared thread pool.

NAME                    WORKLOAD                Bandwidth       IOPS            
9p-mmap-randrw          randrw-psync            42.8mb/14.3mb   10.7k/3666      
9p-mmap-msize16m        randrw-psync            42.8mb/14.3mb   10.7k/3674      
vtfs-auto-ex-randrw     randrw-psync            27.8mb/9547kb   7136/2386       
vtfs-auto-sh-randrw     randrw-psync            43.3mb/14.4mb   10.8k/3709      
vtfs-none-sh-randrw     randrw-psync            54.1mb/18.1mb   13.5k/4649      


- Increasing msize to 16m did not help with performance for this workload.
- virtiofs exclusive thread pool ("ex"), is slower than 9p.
- virtiofs shared thread pool ("sh"), matches the performance of 9p.
- virtiofs cache=none mode is faster than cache=auto mode for this
  workload.

Carlos, I am looking at more ways to optimize it further for virtiofs.
In the mean time I think switching to "shared" thread pool should
bring you very close to 9p in your setup I think.

Thanks
Vivek



  parent reply	other threads:[~2020-09-29 13:17 UTC|newest]

Thread overview: 107+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-18 21:34 [Virtio-fs] tools/virtiofs: Multi threading seems to hurt performance Vivek Goyal
2020-09-18 21:34 ` Vivek Goyal
2020-09-21  8:39 ` [Virtio-fs] " Stefan Hajnoczi
2020-09-21  8:39   ` Stefan Hajnoczi
2020-09-21 13:39   ` [Virtio-fs] " Vivek Goyal
2020-09-21 13:39     ` Vivek Goyal
2020-09-21 16:57     ` [Virtio-fs] " Stefan Hajnoczi
2020-09-21 16:57       ` Stefan Hajnoczi
2020-09-21  8:50 ` [Virtio-fs] " Dr. David Alan Gilbert
2020-09-21  8:50   ` Dr. David Alan Gilbert
2020-09-21 13:35   ` [Virtio-fs] " Vivek Goyal
2020-09-21 13:35     ` Vivek Goyal
2020-09-21 14:08     ` [Virtio-fs] " Daniel P. Berrangé
2020-09-21 14:08       ` Daniel P. Berrangé
2020-09-21 15:32 ` [Virtio-fs] " Dr. David Alan Gilbert
2020-09-21 15:32   ` Dr. David Alan Gilbert
2020-09-22 10:25   ` [Virtio-fs] " Dr. David Alan Gilbert
2020-09-22 10:25     ` Dr. David Alan Gilbert
2020-09-22 17:47     ` [Virtio-fs] " Vivek Goyal
2020-09-22 17:47       ` Vivek Goyal
2020-09-24 21:33       ` [Virtio-fs] " Venegas Munoz, Jose Carlos
2020-09-24 21:33         ` Venegas Munoz, Jose Carlos
2020-09-24 22:10         ` [Virtio-fs] virtiofs vs 9p performance(Re: tools/virtiofs: Multi threading seems to hurt performance) Vivek Goyal
2020-09-24 22:10           ` Vivek Goyal
2020-09-25  8:06           ` [Virtio-fs] virtiofs vs 9p performance Christian Schoenebeck
2020-09-25  8:06             ` Christian Schoenebeck
2020-09-25 13:13             ` [Virtio-fs] " Vivek Goyal
2020-09-25 13:13               ` Vivek Goyal
2020-09-25 15:47               ` [Virtio-fs] " Christian Schoenebeck
2020-09-25 15:47                 ` Christian Schoenebeck
2021-02-19 16:08             ` [Virtio-fs] Can not set high msize with virtio-9p (Was: Re: virtiofs vs 9p performance) Vivek Goyal
2021-02-19 16:08               ` Vivek Goyal
2021-02-19 17:33               ` [Virtio-fs] " Christian Schoenebeck
2021-02-19 17:33                 ` Christian Schoenebeck
2021-02-19 19:01                 ` [Virtio-fs] " Vivek Goyal
2021-02-19 19:01                   ` Vivek Goyal
2021-02-20 15:38                   ` [Virtio-fs] " Christian Schoenebeck
2021-02-20 15:38                     ` Christian Schoenebeck
2021-02-22 12:18                     ` [Virtio-fs] " Greg Kurz
2021-02-22 12:18                       ` Greg Kurz
2021-02-22 15:08                       ` [Virtio-fs] " Christian Schoenebeck
2021-02-22 15:08                         ` Christian Schoenebeck
2021-02-22 17:11                         ` [Virtio-fs] " Greg Kurz
2021-02-22 17:11                           ` Greg Kurz
2021-02-23 13:39                           ` [Virtio-fs] " Christian Schoenebeck
2021-02-23 13:39                             ` Christian Schoenebeck
2021-02-23 14:07                             ` [Virtio-fs] " Michael S. Tsirkin
2021-02-23 14:07                               ` Michael S. Tsirkin
2021-02-24 15:16                               ` [Virtio-fs] " Christian Schoenebeck
2021-02-24 15:16                                 ` Christian Schoenebeck
2021-02-24 15:43                                 ` [Virtio-fs] " Dominique Martinet
2021-02-24 15:43                                   ` Dominique Martinet
2021-02-26 13:49                                   ` [Virtio-fs] " Christian Schoenebeck
2021-02-26 13:49                                     ` Christian Schoenebeck
2021-02-27  0:03                                     ` [Virtio-fs] " Dominique Martinet
2021-02-27  0:03                                       ` Dominique Martinet
2021-03-03 14:04                                       ` [Virtio-fs] " Christian Schoenebeck
2021-03-03 14:04                                         ` Christian Schoenebeck
2021-03-03 14:50                                         ` [Virtio-fs] " Dominique Martinet
2021-03-03 14:50                                           ` Dominique Martinet
2021-03-05 14:57                                           ` [Virtio-fs] " Christian Schoenebeck
2021-03-05 14:57                                             ` Christian Schoenebeck
2020-09-25 12:41           ` [Virtio-fs] virtiofs vs 9p performance(Re: tools/virtiofs: Multi threading seems to hurt performance) Dr. David Alan Gilbert
2020-09-25 12:41             ` Dr. David Alan Gilbert
2020-09-25 13:04             ` [Virtio-fs] " Christian Schoenebeck
2020-09-25 13:04               ` Christian Schoenebeck
2020-09-25 13:05               ` [Virtio-fs] " Dr. David Alan Gilbert
2020-09-25 13:05                 ` Dr. David Alan Gilbert
2020-09-25 16:05                 ` [Virtio-fs] " Christian Schoenebeck
2020-09-25 16:05                   ` Christian Schoenebeck
2020-09-25 16:33                   ` [Virtio-fs] " Christian Schoenebeck
2020-09-25 16:33                     ` Christian Schoenebeck
2020-09-25 18:51                   ` [Virtio-fs] " Dr. David Alan Gilbert
2020-09-25 18:51                     ` Dr. David Alan Gilbert
2020-09-27 12:14                     ` [Virtio-fs] " Christian Schoenebeck
2020-09-27 12:14                       ` Christian Schoenebeck
2020-09-29 13:03                       ` [Virtio-fs] " Vivek Goyal
2020-09-29 13:03                         ` Vivek Goyal
2020-09-29 13:28                         ` [Virtio-fs] " Christian Schoenebeck
2020-09-29 13:28                           ` Christian Schoenebeck
2020-09-29 13:49                           ` [Virtio-fs] " Vivek Goyal
2020-09-29 13:49                             ` Vivek Goyal
2020-09-29 13:59                             ` [Virtio-fs] " Christian Schoenebeck
2020-09-29 13:59                               ` Christian Schoenebeck
2020-09-29 13:17             ` Vivek Goyal [this message]
2020-09-29 13:17               ` Vivek Goyal
2020-09-29 13:49               ` [Virtio-fs] " Miklos Szeredi
2020-09-29 13:49                 ` Miklos Szeredi
2020-09-29 14:01                 ` Vivek Goyal
2020-09-29 14:01                   ` Vivek Goyal
2020-09-29 14:54                   ` Miklos Szeredi
2020-09-29 14:54                     ` Miklos Szeredi
2020-09-29 15:28                 ` Vivek Goyal
2020-09-29 15:28                   ` Vivek Goyal
2020-09-25 12:11       ` [Virtio-fs] tools/virtiofs: Multi threading seems to hurt performance Dr. David Alan Gilbert
2020-09-25 12:11         ` Dr. David Alan Gilbert
2020-09-25 13:11         ` [Virtio-fs] " Vivek Goyal
2020-09-25 13:11           ` Vivek Goyal
2020-09-21 20:16 ` [Virtio-fs] " Vivek Goyal
2020-09-21 20:16   ` Vivek Goyal
2020-09-22 11:09   ` [Virtio-fs] " Dr. David Alan Gilbert
2020-09-22 11:09     ` Dr. David Alan Gilbert
2020-09-22 22:56     ` [Virtio-fs] " Vivek Goyal
2020-09-22 22:56       ` Vivek Goyal
2020-09-23 12:50 ` [Virtio-fs] " Chirantan Ekbote
2020-09-23 12:59   ` Vivek Goyal
2020-09-25 11:35   ` Dr. David Alan Gilbert

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=20200929131753.GB220516@redhat.com \
    --to=vgoyal@redhat.com \
    --cc=archana.m.shinde@intel.com \
    --cc=cdupontd@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=jose.carlos.venegas.munoz@intel.com \
    --cc=qemu-devel@nongnu.org \
    --cc=virtio-fs@redhat.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.