From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51184) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c7kyA-0001yg-A7 for qemu-devel@nongnu.org; Fri, 18 Nov 2016 10:20:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c7ky6-0000iS-7A for qemu-devel@nongnu.org; Fri, 18 Nov 2016 10:20:50 -0500 Received: from mail-wm0-x241.google.com ([2a00:1450:400c:c09::241]:33776) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1c7ky5-0000hD-V9 for qemu-devel@nongnu.org; Fri, 18 Nov 2016 10:20:46 -0500 Received: by mail-wm0-x241.google.com with SMTP id u144so7229374wmu.0 for ; Fri, 18 Nov 2016 07:20:45 -0800 (PST) Date: Fri, 18 Nov 2016 15:20:43 +0000 From: Stefan Hajnoczi Message-ID: <20161118152043.GK28853@stefanha-x1.localdomain> References: <1479333189-20082-1-git-send-email-stefanha@redhat.com> <20161117001658-mutt-send-email-mst@kernel.org> <20161117132749.GI24138@stefanha-x1.localdomain> <20161117193826-mutt-send-email-mst@kernel.org> <20161118105847.GE28853@stefanha-x1.localdomain> <20161118161309-mutt-send-email-mst@kernel.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="/0P/MvzTfyTu5j9Q" Content-Disposition: inline In-Reply-To: <20161118161309-mutt-send-email-mst@kernel.org> Subject: Re: [Qemu-devel] [PATCH 0/3] virtio: disable notifications in blk and scsi List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: Stefan Hajnoczi , Kevin Wolf , zhunxun@gmail.com, Fam Zheng , qemu-devel@nongnu.org, Christian Borntraeger , Paolo Bonzini --/0P/MvzTfyTu5j9Q Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Nov 18, 2016 at 04:21:33PM +0200, Michael S. Tsirkin wrote: > On Fri, Nov 18, 2016 at 10:58:47AM +0000, Stefan Hajnoczi wrote: > > On Thu, Nov 17, 2016 at 07:38:45PM +0200, Michael S. Tsirkin wrote: > > > On Thu, Nov 17, 2016 at 01:27:49PM +0000, Stefan Hajnoczi wrote: > > > > On Thu, Nov 17, 2016 at 12:17:57AM +0200, Michael S. Tsirkin wrote: > > > > > On Wed, Nov 16, 2016 at 09:53:06PM +0000, Stefan Hajnoczi wrote: > > > > > > Disabling notifications during virtqueue processing reduces the= number of > > > > > > exits. The virtio-net device already uses virtio_queue_set_not= ifications() but > > > > > > virtio-blk and virtio-scsi do not. > > > > > >=20 > > > > > > The following benchmark shows a 15% reduction in virtio-blk-pci= MMIO exits: > > > > > >=20 > > > > > > (host)$ qemu-system-x86_64 \ > > > > > > -enable-kvm -m 1024 -cpu host \ > > > > > > -drive if=3Dvirtio,id=3Ddrive0,file=3Df24.img,for= mat=3Draw,\ > > > > > > cache=3Dnone,aio=3Dnative > > > > > > (guest)$ fio # jobs=3D4, iodepth=3D8, direct=3D1, randread > > > > > > (host)$ sudo perf record -a -e kvm:kvm_fast_mmio > > > > > >=20 > > > > > > Number of kvm_fast_mmio events: > > > > > > Unpatched: 685k > > > > > > Patched: 592k (-15%, lower is better) > > > > >=20 > > > > > Any chance to see a gain in actual benchmark numbers? > > > > > This is important to make sure we are not just > > > > > shifting overhead around. > > > >=20 > > > > Good idea. I reran this morning without any tracing and compared > > > > against bare metal. > > > >=20 > > > > Total reads for a 30-second 4 KB random read benchmark with 4 proce= sses > > > > x iodepth=3D8: > > > >=20 > > > > Bare metal: 26440 MB > > > > Unpatched: 19799 MB > > > > Patched: 21252 MB > > > >=20 > > > > Patched vs Unpatched: +7% improvement > > > > Patched vs Bare metal: 20% virtualization overhead > > > >=20 > > > > The disk image is a 8 GB raw file on XFS on LVM on dm-crypt on a Sa= msung > > > > MZNLN256HCHP 256 GB SATA SSD. This is just my laptop. > > > >=20 > > > > Seems like a worthwhile improvement to me. > > > >=20 > > > > Stefan > > >=20 > > > Sure. Pls remember to ping or re-post after the release. > >=20 > > How about a -next tree? >=20 > -next would make sense if we did Linus style short merge > cycles followed by a long stabilization period. >=20 > With current QEMU style -next seems counter-productive, we do freezes in > particular so people focus on stabilization, with -next everyone except > maintainers just keeps going as usual, and maintainers must handle > double the load. >=20 > > I've found that useful for block, net, and tracing in the past. Most of > > the time it means patch authors can rest assured their patches will be > > merged without further action. It allows development of features that > > depend on out-of-tree patches. > >=20 > > Stefan >=20 > Less work for authors, more work for me ... I'd rather distribute the loa= d. Okay. Stefan --/0P/MvzTfyTu5j9Q Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEcBAEBAgAGBQJYLxxKAAoJEJykq7OBq3PIOFoH/0XNukwaT/oD1LSLgckKkoak 3wDOIVDG3QU9msStuPn3gvq7nL/K4IvsayS2RogvF/q/CNjzHq9yG74OtXwu5kGy CjhZJAJ4F2zdWIVuNTnjqSIbHq4RNt+VhUyM/8v788QAO5vMbPfpgo8Y4rXTaIcq F0b+/KpQkiuC6if19GApk5G+jNwdj8JwEmGqoTf43eGtNklyy0MNWvVES7GlM5ss xJDCupfFMXmDON1iY+CRGg3eSKMF/7uCHXz5RLo/A3iLUMsX3yOW4LAlI3BJhn4A LVK8p3CYx311YADYfloICnh20fl8F2CMz1J/7cdZYKzrurKr5xJPQcMBenDoKUE= =pOKm -----END PGP SIGNATURE----- --/0P/MvzTfyTu5j9Q--