From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=56709 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P64pc-0001x7-H9 for qemu-devel@nongnu.org; Wed, 13 Oct 2010 13:09:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P64pb-0005CC-3d for qemu-devel@nongnu.org; Wed, 13 Oct 2010 13:09:36 -0400 Received: from e28smtp05.in.ibm.com ([122.248.162.5]:59011) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P64pa-0005Bl-El for qemu-devel@nongnu.org; Wed, 13 Oct 2010 13:09:35 -0400 Received: from d28relay01.in.ibm.com (d28relay01.in.ibm.com [9.184.220.58]) by e28smtp05.in.ibm.com (8.14.4/8.13.1) with ESMTP id o9DH9UKp003444 for ; Wed, 13 Oct 2010 22:39:30 +0530 Received: from d28av03.in.ibm.com (d28av03.in.ibm.com [9.184.220.65]) by d28relay01.in.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id o9DH9TK54096200 for ; Wed, 13 Oct 2010 22:39:30 +0530 Received: from d28av03.in.ibm.com (loopback [127.0.0.1]) by d28av03.in.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id o9DH9TqF016774 for ; Thu, 14 Oct 2010 04:09:29 +1100 Received: from localhost6.localdomain6 ([9.77.203.166]) by d28av03.in.ibm.com (8.14.4/8.13.1/NCO v10.0 AVin) with ESMTP id o9DH9Rpv016754 for ; Thu, 14 Oct 2010 04:09:28 +1100 From: Arun R Bharadwaj Date: Wed, 13 Oct 2010 22:39:24 +0530 Message-ID: <20101013165321.23885.81012.stgit@localhost6.localdomain6> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] [RFC PATCH 0/6] First Threading Model List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Hi, This patchset implements first threading model by making use of the threadlets infrastructure being discussed here: http://www.mail-archive.com/qemu-devel@nongnu.org/msg36678.html Here are some of the performance results comparing between the original code and threading model code: http://pastebin.com/EzdJRC34 Following are the features of the first threading model: * The VCPU thread runs the Qemu code until the first blocking call is encountered. * The work to be done in the blocking call is assigned to an asynchronous thread and the VCPU thread continues running the Qemu code. * The aynchronous thread reports back to the VCPU/IO thread when the blocking call is finished. * The VCPU/IO thread continues from immediately after the blocking call until the next blocking call is hit, and the whole process is repeated till no blocking call is encountered. The following series implements... --- Gautham R Shenoy (6): This patch converts v9fs_stat() to make use of the threadlets infrastructure. This patch converts v9fs_wstat() to make use of the threadlets infrastructure. This patch converts v9fs_read() to make use of the threadlets infrastructure. This patch converts v9fs_write() to make use of the threadlets infrastructure. This patch converts v9fs_open() to make use of the threadlets infrastructure. This patch converts v9fs_walk() to make use of the threadlets infrastructure. hw/virtio-9p.c | 770 +++++++++++++++++++++++++++++++++++++++++--------------- hw/virtio-9p.h | 33 ++ 2 files changed, 597 insertions(+), 206 deletions(-) -- arun