From: Maxim Levitsky <mlevitsk@redhat.com>
To: Vitaly Mayatskih <v.mayatskih@gmail.com>
Cc: "Michael S . Tsirkin" <mst@redhat.com>,
Jason Wang <jasowang@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>,
kvm@vger.kernel.org, virtualization@lists.linux-foundation.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 0/1] vhost: add vhost_blk driver
Date: Mon, 05 Nov 2018 13:55:24 +0200 [thread overview]
Message-ID: <71ed924dfecf358f6e13a0d1897f94e148058b4a.camel@redhat.com> (raw)
In-Reply-To: <CAGF4SLhxvC5WN8W_ApoqMTe1i1r8FwX92Bb9UewpNwkKCZepnQ@mail.gmail.com>
On Sun, 2018-11-04 at 11:40 -0500, Vitaly Mayatskih wrote:
> On Sun, Nov 4, 2018 at 6:57 AM Maxim Levitsky <mlevitsk@redhat.com> wrote:
>
> > Hi!
> > I am also working in this area, and so I am very intersted in this driver.
> >
> > > 1 171k 151k 148k 151k 195k 187k 175k
> >
> > If I understand correctly this is fio --numjobs=1?
> > It looks like you are getting better that native performance over bare metal
> > in
> > E,F,G (vhost-blk cases in fact). Is this correct?
>
> Yes. At such speeds it is a matter of how the workers are scheduled,
> i.e. how good is batching. There are other factors why vhost-blk is on
> par or slightly higher than fio running in userspace on bare metal,
> but from my observation the right batching all through the stack is
> more important.
I completely agree with you on that.
I currently learning profiling/tracing to understand the batching (or lack of)
in the tests I run
My focus currently is mostly on spdk + native nvme
While for multiple threads, the performance is very close to bare metal, on
single thread I see significant overhead which probably relate to batching as
well.
>
> > Could you share the full fio command line you have used?
>
> sysctl -w vm.nr_hugepages=8300; numactl -p 1 -N 1 ./qemu-system-x86_64
> -enable-kvm -cpu host -smp 16 -mem-prealloc -mem-path
> /dev/hugepages/foo -m 8G -nographic -drive
> if=none,id=drive0,format=raw,file=/dev/mapper/mirror-hello,cache=none
> -device virtio-blk-pci,id=blk0,drive=drive0,num-queues=16 -drive
> if=none,id=drive1,format=raw,file=/dev/mapper/mirror-volume,cache=none
> -device vhost-blk-pci,id=blk1,drive=drive1,num-queues=16
Thanks!
>
> for i in `seq 1 16`; do echo -n "$i "; ./fio --direct=1 --rw=randread
> --ioengine=libaio --bs=4k --iodepth=128 --numjobs=$i --name=foo
> --time_based --runtime=15 --group_reporting --filename=/dev/vda
> --size=10g | grep -Po 'IOPS=[0-9\.]*k'; done
>
> > Which IO device did you use for the test? NVME?
>
> That was LVM mirror over 2 network disks. On the target side it was
> LVM stripe over few NVMe's.
Have you tried to test this over directly connected NVME device to?
The networking might naturally improve batching I think.
>
> > Which system (cpu model/number of cores/etc) did you test on?
>
> Dual socket: "model name : Intel(R) Xeon(R) Gold 6142 CPU @
> 2.60GHz" with HT enabled, so 64 logical cores in total. The network
> was something from Intel with 53 Gbps PHY and served by fm10k driver.
All right, thanks!
I'll test your driver on my system where I tested most of the current solutions.
Best regards,
Maxim Levitsky
next prev parent reply other threads:[~2018-11-05 11:55 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-02 18:21 Vitaly Mayatskikh
2018-11-02 18:21 ` [PATCH 1/1] Add " Vitaly Mayatskikh
2018-11-02 18:36 ` Michael S. Tsirkin
2018-11-02 19:24 ` Vitaly Mayatskih
2018-11-02 20:38 ` Michael S. Tsirkin
2018-11-03 2:50 ` kbuild test robot
2018-11-06 16:03 ` Stefan Hajnoczi
2018-11-06 19:47 ` Vitaly Mayatskih
2018-11-02 18:26 ` [PATCH 0/1] vhost: add " Michael S. Tsirkin
2018-11-02 18:31 ` Vitaly Mayatskih
2018-11-05 14:02 ` Christian Borntraeger
2018-11-05 14:21 ` Vitaly Mayatskih
2018-11-06 15:40 ` Stefan Hajnoczi
2018-11-06 18:46 ` Denis Lunev
2018-11-06 20:08 ` Vitaly Mayatskih
2018-11-04 11:57 ` Maxim Levitsky
2018-11-04 16:40 ` Vitaly Mayatskih
2018-11-05 11:55 ` Maxim Levitsky [this message]
2018-11-05 3:00 ` Jason Wang
2018-11-05 3:23 ` Vitaly Mayatskih
2018-11-06 2:45 ` Jason Wang
2018-11-06 2:56 ` Vitaly Mayatskih
2018-11-06 7:13 ` Christoph Hellwig
2018-11-06 21:41 ` Paolo Bonzini
2018-11-05 15:48 ` Christian Borntraeger
2018-11-05 16:15 ` Vitaly Mayatskih
2018-11-06 15:21 ` Stefan Hajnoczi
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=71ed924dfecf358f6e13a0d1897f94e148058b4a.camel@redhat.com \
--to=mlevitsk@redhat.com \
--cc=jasowang@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=v.mayatskih@gmail.com \
--cc=virtualization@lists.linux-foundation.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
all inboxes | Powered by JetHome®