From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36510) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c7QeF-0002IS-Kk for qemu-devel@nongnu.org; Thu, 17 Nov 2016 12:38:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c7QeB-0000Kh-NY for qemu-devel@nongnu.org; Thu, 17 Nov 2016 12:38:55 -0500 Received: from mail.kernel.org ([198.145.29.136]:54148) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1c7QeB-0000KV-H9 for qemu-devel@nongnu.org; Thu, 17 Nov 2016 12:38:51 -0500 Date: Thu, 17 Nov 2016 19:38:45 +0200 From: "Michael S. Tsirkin" Message-ID: <20161117193826-mutt-send-email-mst@kernel.org> References: <1479333189-20082-1-git-send-email-stefanha@redhat.com> <20161117001658-mutt-send-email-mst@kernel.org> <20161117132749.GI24138@stefanha-x1.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20161117132749.GI24138@stefanha-x1.localdomain> 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: Stefan Hajnoczi Cc: Stefan Hajnoczi , Kevin Wolf , zhunxun@gmail.com, Fam Zheng , qemu-devel@nongnu.org, Christian Borntraeger , Paolo Bonzini 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_notifications() but > > > virtio-blk and virtio-scsi do not. > > > > > > The following benchmark shows a 15% reduction in virtio-blk-pci MMIO exits: > > > > > > (host)$ qemu-system-x86_64 \ > > > -enable-kvm -m 1024 -cpu host \ > > > -drive if=virtio,id=drive0,file=f24.img,format=raw,\ > > > cache=none,aio=native > > > (guest)$ fio # jobs=4, iodepth=8, direct=1, randread > > > (host)$ sudo perf record -a -e kvm:kvm_fast_mmio > > > > > > Number of kvm_fast_mmio events: > > > Unpatched: 685k > > > Patched: 592k (-15%, lower is better) > > > > Any chance to see a gain in actual benchmark numbers? > > This is important to make sure we are not just > > shifting overhead around. > > Good idea. I reran this morning without any tracing and compared > against bare metal. > > Total reads for a 30-second 4 KB random read benchmark with 4 processes > x iodepth=8: > > Bare metal: 26440 MB > Unpatched: 19799 MB > Patched: 21252 MB > > Patched vs Unpatched: +7% improvement > Patched vs Bare metal: 20% virtualization overhead > > The disk image is a 8 GB raw file on XFS on LVM on dm-crypt on a Samsung > MZNLN256HCHP 256 GB SATA SSD. This is just my laptop. > > Seems like a worthwhile improvement to me. > > Stefan Sure. Pls remember to ping or re-post after the release.