From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GmWgb-0006tH-E6 for qemu-devel@nongnu.org; Tue, 21 Nov 2006 09:33:21 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GmWgY-0006op-Nu for qemu-devel@nongnu.org; Tue, 21 Nov 2006 09:33:20 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GmWgY-0006oc-IW for qemu-devel@nongnu.org; Tue, 21 Nov 2006 09:33:18 -0500 Received: from [193.7.176.60] (helo=mail.bawue.net) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA:32) (Exim 4.52) id 1GmWgY-0008Qy-2j for qemu-devel@nongnu.org; Tue, 21 Nov 2006 09:33:18 -0500 Received: from lagash (unknown [195.71.97.210]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.bawue.net (Postfix) with ESMTP id 0B5B6BA3CA for ; Tue, 21 Nov 2006 15:34:44 +0100 (CET) Received: from ths by lagash with local (Exim 4.63) (envelope-from ) id 1GmWgj-0003VI-C3 for qemu-devel@nongnu.org; Tue, 21 Nov 2006 14:33:29 +0000 Date: Tue, 21 Nov 2006 14:33:29 +0000 Message-ID: <20061121143329.GA12745@networkno.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline From: Thiemo Seufer Subject: [Qemu-devel] [PATCH 0/6] A cumulative MIPS patchset 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 Hello All, The following patchset collects the most important improvements of MIPS system emulation mode: qemu.drow-performance # TLB performance improvements qemu.drow-halt-reboot # support for halt and reboot moredevices # A few more devices, most importantly RTC mfc0-inline # inline MFC0 instructions mtc0-inline # inline MTC0 instructions opcode-handling # MIPS32R2 support and retionalised instruction # decoding Daniel's improvements of the TLB emulation allow finally some useful performance measurements for inlining of CP0 accesses. The appended lmbench result shows general improvements. The first line is qemu patched with the whole patchset, the second is qemu patched up to moredevices. Both runs usd the same binaries, without using the MIPS32R2 improvements. Thiemo L M B E N C H 3 . 0 S U M M A R Y ------------------------------------ (Alpha software, do not distribute) Basic system parameters ------------------------------------------------------------------------------ Host OS Description Mhz tlb cache mem scal pages line par load bytes --------- ------------- ----------------------- ---- ----- ----- ------ ---- lagash-qe Linux 2.6.18- mips-linux-gnu 185 1 lagash-qe Linux 2.6.18- mips-linux-gnu 185 1 Processor, Processes - times in microseconds - smaller is better ------------------------------------------------------------------------------ Host OS Mhz null null open slct sig sig fork exec sh call I/O stat clos TCP inst hndl proc proc proc --------- ------------- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- lagash-qe Linux 2.6.18- 185 1.48 4.52 53.0 85.0 126. 12.1 71.6 7104 33.K 142K lagash-qe Linux 2.6.18- 185 2.05 5.71 55.0 91.6 135. 13.0 74.0 7221 33.K 142K Basic integer operations - times in nanoseconds - smaller is better ------------------------------------------------------------------- Host OS intgr intgr intgr intgr intgr bit add mul div mod --------- ------------- ------ ------ ------ ------ ------ lagash-qe Linux 2.6.18- 5.9500 0.0900 20.7 32.6 37.9 lagash-qe Linux 2.6.18- 6.0300 0.0900 20.9 33.4 38.5 Basic uint64 operations - times in nanoseconds - smaller is better ------------------------------------------------------------------ Host OS int64 int64 int64 int64 int64 bit add mul div mod --------- ------------- ------ ------ ------ ------ ------ lagash-qe Linux 2.6.18- lagash-qe Linux 2.6.18- Basic float operations - times in nanoseconds - smaller is better ----------------------------------------------------------------- Host OS float float float float add mul div bogo --------- ------------- ------ ------ ------ ------ lagash-qe Linux 2.6.18- 77.7 114.3 153.9 536.6 lagash-qe Linux 2.6.18- 78.6 113.9 155.7 543.0 Basic double operations - times in nanoseconds - smaller is better ------------------------------------------------------------------ Host OS double double double double add mul div bogo --------- ------------- ------ ------ ------ ------ lagash-qe Linux 2.6.18- 154.4 178.4 362.2 1071.8 lagash-qe Linux 2.6.18- 156.2 188.0 366.4 1078.5 Context switching - times in microseconds - smaller is better ------------------------------------------------------------------------- Host OS 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw --------- ------------- ------ ------ ------ ------ ------ ------- ------- lagash-qe Linux 2.6.18- 49.1 127.1 380.8 291.7 692.9 343.4 796.5 lagash-qe Linux 2.6.18- 49.0 116.3 350.2 291.1 668.7 342.9 784.2 *Local* Communication latencies in microseconds - smaller is better --------------------------------------------------------------------- Host OS 2p/0K Pipe AF UDP RPC/ TCP RPC/ TCP ctxsw UNIX UDP TCP conn --------- ------------- ----- ----- ---- ----- ----- ----- ----- ---- lagash-qe Linux 2.6.18- 49.1 199.6 409. 782.2 1940. 7957 lagash-qe Linux 2.6.18- 49.0 193.2 433. 851.3 1888. 7827 *Remote* Communication latencies in microseconds - smaller is better --------------------------------------------------------------------- Host OS UDP RPC/ TCP RPC/ TCP UDP TCP conn --------- ------------- ----- ----- ----- ----- ---- lagash-qe Linux 2.6.18- lagash-qe Linux 2.6.18- File & VM system latencies in microseconds - smaller is better ------------------------------------------------------------------------------- Host OS 0K File 10K File Mmap Prot Page 100fd Create Delete Create Delete Latency Fault Fault selct --------- ------------- ------ ------ ------ ------ ------- ----- ------- ----- lagash-qe Linux 2.6.18- 9447.0 11.8 41.2 80.8 lagash-qe Linux 2.6.18- 10.3K 13.7 46.4 123.1 *Local* Communication bandwidths in MB/s - bigger is better ----------------------------------------------------------------------------- Host OS Pipe AF TCP File Mmap Bcopy Bcopy Mem Mem UNIX reread reread (libc) (hand) read write --------- ------------- ---- ---- ---- ------ ------ ------ ------ ---- ----- lagash-qe Linux 2.6.18- 28.7 26.7 14.2 49.1 85.3 66.7 44.0 87.5 110.6 lagash-qe Linux 2.6.18- 28.6 27.1 14.6 47.8 83.7 63.9 43.1 84.1 109.5 Memory latencies in nanoseconds - smaller is better (WARNING - may not be correct, check graphs) ------------------------------------------------------------------------------ Host OS Mhz L1 $ L2 $ Main mem Rand mem Guesses --------- ------------- --- ---- ---- -------- -------- ------- lagash-qe Linux 2.6.18- 185 16.9 21.0 574.1 13.5K No L1 cache? lagash-qe Linux 2.6.18- 185 17.8 22.0 563.5 13.8K No L1 cache?