From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1FS3uU-0001UA-MR for qemu-devel@nongnu.org; Fri, 07 Apr 2006 23:14:50 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1FS3uT-0001S3-3l for qemu-devel@nongnu.org; Fri, 07 Apr 2006 23:14:50 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FS3uS-0001Ro-V0 for qemu-devel@nongnu.org; Fri, 07 Apr 2006 23:14:49 -0400 Received: from [81.103.221.47] (helo=mtaout01-winn.ispmail.ntl.com) by monty-python.gnu.org with esmtp (Exim 4.52) id 1FS3yZ-0005FY-1w for qemu-devel@nongnu.org; Fri, 07 Apr 2006 23:19:03 -0400 Received: from aamtaout04-winn.ispmail.ntl.com ([81.103.221.35]) by mtaout01-winn.ispmail.ntl.com with ESMTP id <20060408031353.MSWP29343.mtaout01-winn.ispmail.ntl.com@aamtaout04-winn.ispmail.ntl.com> for ; Sat, 8 Apr 2006 04:13:53 +0100 Received: from suse10.valgrind.org ([82.21.96.252]) by aamtaout04-winn.ispmail.ntl.com with ESMTP id <20060408031353.JJWR16086.aamtaout04-winn.ispmail.ntl.com@suse10.valgrind.org> for ; Sat, 8 Apr 2006 04:13:53 +0100 From: Julian Seward Date: Sat, 8 Apr 2006 04:13:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200604080413.52908.jseward@acm.org> Subject: [Qemu-devel] Translation cache sizes Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Using qemu from cvs simulating x86-softmmu (no kqemu) on x86, booting SuSE 9.1 and getting to the xdm (kdm?) graphical login screen, requires making about 1088000 translations, and the translation cache is flushed 17 times. Booting is not too bad, but once user-mode starts to run the translation cache is pretty much hammered. I made 2 changes: * increase CODE_GEN_BUFFER_SIZE from 16*1024*1024 to 64*1024*1024, * observe that CODE_GEN_AVG_BLOCK_SIZE of 128 for the softmmu case is too low; my measurements put it at about 247. So I changed it to 256. With those changes in place, the same boot-to-kdm process requires only about 570000 translations to be made, and 2 cache flushes to happen. Of course the cost is an extra 48M of memory use. J