From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NeV32-0006RB-Ic for qemu-devel@nongnu.org; Mon, 08 Feb 2010 09:57:12 -0500 Received: from [199.232.76.173] (port=41217 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NeV32-0006Qt-1w for qemu-devel@nongnu.org; Mon, 08 Feb 2010 09:57:12 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1NeV2y-0003pc-T6 for qemu-devel@nongnu.org; Mon, 08 Feb 2010 09:57:11 -0500 Received: from mail-iw0-f194.google.com ([209.85.223.194]:54485) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NeV2y-0003pK-L8 for qemu-devel@nongnu.org; Mon, 08 Feb 2010 09:57:08 -0500 Received: by iwn34 with SMTP id 34so2144080iwn.21 for ; Mon, 08 Feb 2010 06:57:07 -0800 (PST) Message-ID: <4B702641.5060907@codemonkey.ws> Date: Mon, 08 Feb 2010 08:57:05 -0600 From: Anthony Liguori MIME-Version: 1.0 References: <20100208134645.GA19130@amit-x200.redhat.com> In-Reply-To: <20100208134645.GA19130@amit-x200.redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: Slowdowns comparing qemu-kvm.git to qemu.git: vcpu/thread scheduling differences List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Amit Shah Cc: Marcelo Tosatti , qemu-devel@nongnu.org, KVM List On 02/08/2010 07:46 AM, Amit Shah wrote: > Hello, > > In my testing of virtio-console, I found qemu-kvm.git introduces a lot > of overhead in thread scheduling compared to qemu.git. > > My test sends a 260M file from the host to a guest via a virtio-console > port and then computes the sha1sum of the file on the host as well as on > the guest, compares the checksum and declares the result based on the > checksum match. The test passes in all the scenarios listed below, > indicating there's no unsafe data transfer. > > > Repo Time taken > ----- ---------- > qemu.git< 1 m (typically 30s) > qemu-kvm.git> 16m > qemu-iothread ~ 5m > That very likely suggests that there are missing qemu_notify_events() in qemu-kvm.git and you're getting blocked waiting for the next timer event to fire. IOW, I assume that during the qemu-kvm.git run, the CPU isn't pegged at 100% whereas it is in qemu.git. Regards, Anthony Liguori