From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Michael S. Tsirkin" Subject: Re: [Qemu-devel] Re: [PATCH] virtio: Use ioeventfd for virtqueue notify Date: Mon, 4 Oct 2010 18:25:02 +0200 Message-ID: <20101004162502.GA6078@redhat.com> References: <1285855312-11739-1-git-send-email-stefanha@linux.vnet.ibm.com> <4CA862A7.2080302@redhat.com> <20101003135138.GA19775@redhat.com> <4CA89185.6070302@redhat.com> <20101003142828.GB19775@redhat.com> <4CA92B79.2030805@linux.vnet.ibm.com> <4CA98A8D.4000500@redhat.com> <4CA9DE2A.5080309@linux.vnet.ibm.com> <20101004161238.GB5795@redhat.com> <4CA9FEC3.20205@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Avi Kivity , Steve Dobbelstein , Stefan Hajnoczi , kvm@vger.kernel.org, qemu-devel@nongnu.org, Khoa Huynh , sri@linux.vnet.ibm.com To: Anthony Liguori Return-path: Received: from mx1.redhat.com ([209.132.183.28]:4426 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752567Ab0JDQbO (ORCPT ); Mon, 4 Oct 2010 12:31:14 -0400 Content-Disposition: inline In-Reply-To: <4CA9FEC3.20205@linux.vnet.ibm.com> Sender: kvm-owner@vger.kernel.org List-ID: On Mon, Oct 04, 2010 at 11:20:19AM -0500, Anthony Liguori wrote: > On 10/04/2010 11:12 AM, Michael S. Tsirkin wrote: > >On Mon, Oct 04, 2010 at 09:01:14AM -0500, Anthony Liguori wrote: > >>On 10/04/2010 03:04 AM, Avi Kivity wrote: > >>>On 10/04/2010 03:18 AM, Anthony Liguori wrote: > >>>>On 10/03/2010 09:28 AM, Michael S. Tsirkin wrote: > >>>>>>This is using eventfd as well. > >>>>>Sorry, I meant irqfd. > >>>>I've tried using irqfd in userspace. It hurts performance quite > >>>>a bit compared to doing an ioctl so I would suspect this too. > >>>> > >>>>A last_used_idx or similar mechanism should help performance > >>>>quite a bit on top of ioeventfd too. > >>>> > >>>Any idea why? While irqfd does quite a bit of extra locking, it > >>>shouldn't be that bad. > >>Not really. It was somewhat counter intuitive. > >> > >>A worthwhile experiment might be to do some layering violations and > >>have vhost do an irq injection via an ioctl and see what the > >>performance delta is. > >I think you don't even need to try that hard. > >Just comment this line: > >// proxy->pci_dev.msix_mask_notifier = virtio_pci_mask_notifier; > >this is what switches to irqfd when msi vector is unmasked. > > That drops to userspace though for all irqs, no? Exactly. > Or did you mean that commenting that line out improves performance > demonstrating the overhead of irqfd? > > Regards, > > Anthony Liguori Haven't tried this, but possibly. > >> I suspect it could give vhost a nice boost. > >> > >>Regards, > >> > >>Anthony Liguori