From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MaEWp-0004BN-JN for qemu-devel@nongnu.org; Sun, 09 Aug 2009 15:58:03 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MaEWk-0004Ad-9h for qemu-devel@nongnu.org; Sun, 09 Aug 2009 15:58:02 -0400 Received: from [199.232.76.173] (port=49770 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MaEWk-0004AV-4V for qemu-devel@nongnu.org; Sun, 09 Aug 2009 15:57:58 -0400 Received: from mx20.gnu.org ([199.232.41.8]:47942) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MaEWj-0008NL-NJ for qemu-devel@nongnu.org; Sun, 09 Aug 2009 15:57:57 -0400 Received: from mx2.redhat.com ([66.187.237.31]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MaEWi-0004hV-Pj for qemu-devel@nongnu.org; Sun, 09 Aug 2009 15:57:57 -0400 Date: Sun, 9 Aug 2009 22:56:42 +0300 From: "Michael S. Tsirkin" Message-ID: <20090809195642.GB21703@redhat.com> References: <20090806163549.GA25594@lst.de> <4A7E9E7F.2090901@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4A7E9E7F.2090901@redhat.com> Subject: [Qemu-devel] Re: virtio-blk performance and MSI List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: qemu-devel@nongnu.org, Christoph Hellwig , kvm@vger.kernel.org On Sun, Aug 09, 2009 at 01:01:35PM +0300, Avi Kivity wrote: > On 08/06/2009 07:35 PM, Christoph Hellwig wrote: >> Michael suggested to me a while ago to try MSI with virtio-blk and I >> played with this small patch: >> >> >> Index: qemu-kvm/hw/virtio-blk.c >> =================================================================== >> --- qemu-kvm.orig/hw/virtio-blk.c >> +++ qemu-kvm/hw/virtio-blk.c >> @@ -416,6 +416,7 @@ VirtIODevice *virtio_blk_init(DeviceStat >> s->vdev.get_config = virtio_blk_update_config; >> s->vdev.get_features = virtio_blk_get_features; >> s->vdev.reset = virtio_blk_reset; >> + s->vdev.nvectors = 2; some whitespace damage btw >> s->bs = bs; >> s->rq = NULL; >> if (strlen(ps = (char *)drive_get_serial(bs))) >> >> which gave about 5% speedups on 4k sized reads and writes, see the full >> iozone output I attached. Now getting the information about using >> multiple MSI vectors from the command line to virtio-blk similar to how >> virtio-net does seems extremly messy right now. Waiting for Gerd's >> additional qdev patches to make it easier as a qdev property. >> >> > > Looks good. Anthony, I think this applies upstream? This applies upstream, but we also need the flag to change # of vectors: for loading old images, but also for troubleshooting. Thus the qdev dependency. -- MST