From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:57589) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RW2iA-0006i7-RB for qemu-devel@nongnu.org; Thu, 01 Dec 2011 04:13:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RW2i5-0008JD-7V for qemu-devel@nongnu.org; Thu, 01 Dec 2011 04:13:46 -0500 Received: from mail-ee0-f45.google.com ([74.125.83.45]:43230) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RW2i4-0008J5-VH for qemu-devel@nongnu.org; Thu, 01 Dec 2011 04:13:41 -0500 Received: by eeba50 with SMTP id a50so922997eeb.4 for ; Thu, 01 Dec 2011 01:13:40 -0800 (PST) Date: Thu, 1 Dec 2011 07:46:57 +0000 From: Stefan Hajnoczi Message-ID: <20111201074657.GA29861@stefanha-thinkpad.localdomain> References: <20111129070343.GA3585@cs.nctu.edu.tw> <20111201035024.GA88545@cs.nctu.edu.tw> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20111201035024.GA88545@cs.nctu.edu.tw> Subject: Re: [Qemu-devel] Improve QEMU performance with LLVM codegen and other techniques List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?utf-8?B?6Zmz6Z+L5Lu7?= Cc: Alexander Graf , qemu-devel@nongnu.org On Thu, Dec 01, 2011 at 11:50:24AM +0800, 陳韋任 wrote: > > I don't see any better approach to debugging this than the one you're already taking. Try to run as many workloads as you can and see if they break :). Oh and always make the optimization optional, so that you can narrow it down to it and know you didn't hit a generic QEMU bug. > > You mean make the trace optimization optional? We have tested our framework in > LLVM-only mode. which means we replace TCG with LLVM entirely. It's _very_ slow > but works. It would be interesting to use an optimized interpreter instead of TCG, then go to LLVM for hot traces. This is more HotSpot-like with the idea being that the interpreter runs through initialization and rarely executed code without a translation overhead. For the hot paths LLVM kicks in and high-quality translated code is executed. Stefan