From owner-freebsd-hackers Mon Jan 22 19:12:49 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id TAA21200 for hackers-outgoing; Mon, 22 Jan 1996 19:12:49 -0800 (PST) Received: from Glock.COM (root@glock.com [198.82.228.165]) by freefall.freebsd.org (8.7.3/8.7.3) with ESMTP id TAA21080 for ; Mon, 22 Jan 1996 19:12:19 -0800 (PST) Received: (from mmead@localhost) by Glock.COM (8.7.1/8.7.1) id WAA04347 for hackers@freebsd.org; Mon, 22 Jan 1996 22:12:10 -0500 (EST) From: "matthew c. mead" Message-Id: <199601230312.WAA04347@Glock.COM> Subject: pentium GCC compiled kernel To: hackers@freebsd.org Date: Mon, 22 Jan 1996 22:12:10 -0500 (EST) X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-hackers@freebsd.org Precedence: bulk I had to compile some of the files with -m486 or regular old gcc 2.6.3, but did manage to get a mostly pentium optimized kernel put together (using -O6) and it seems to be working just fine. I used lmbench with my kernel built with gcc 2.6.3, installed the new mostly pentium optimized kernel, and reran lmbench. The results show a little bit of improvement in some areas, and for some reason, some of the results got a little worse, while yet more stayed the same. If anyone's interested, here are the results. The first line for Glock.COM is the standard kernel I use, and the second is the pentium gcc optimized kernel. -matt =============================================================================== L M B E N C H 1 . 0 S U M M A R Y ------------------------------------ Processor, Processes - times in microseconds -------------------------------------------- Host OS Mhz Null Null Simple /bin/sh Mmap 2-proc 8-proc Syscall Process Process Process lat ctxsw ctxsw --------- ------------- ---- ------- ------- ------- ------- ---- ------ ------ rs6000 AIX 2 62 23 2.0K 7.3K 23K 3817 20 32 Glock.COM FreeBSD 2.1.0 90 11 3.5K 17.2K 27K 153 31 39 Glock.COM FreeBSD 2.1.0 90 9 3.5K 16.2K 25K 157 34 38 mako HP-UX A.09.01 65 22 2.7K 5.6K 17K 155 25 29 seahorse HP-UX A.09.03 99 14 3.6K 10.1K 18K 116 47 55 snake HP-UX A.09.01 66 21 2.6K 5.7K 17K 156 40 38 IP22 IRIX 5.3 198 11 3.1K 8.0K 19K 260 66 94 pentium Linux 1.1.54 91 3 3.3K 15.4K 49K 33 25 42 alpha OSF1 V2.1 182 13 4.8K 16.1K 43K 172 54 85 ss20.50 SunOS 5.4 50 9 10.7K 57.5K 113K 130 37 52 ss20.61 SunOS 5.4 61 7 8.0K 45.8K 87K 104 0 0 *Local* Communication latencies in microseconds ----------------------------------------------- Host OS Pipe UDP RPC/ TCP RPC/ UDP TCP --------- ------------- ------- ------- ------- ------- ------- rs6000 AIX 2 143 385 820 498 1054 Glock.COM FreeBSD 2.1.0 141 298 499 352 616 Glock.COM FreeBSD 2.1.0 139 285 479 335 656 mako HP-UX A.09.01 288 412 1302 374 1156 seahorse HP-UX A.09.03 193 244 832 262 812 snake HP-UX A.09.01 296 403 1195 367 1142 IP22 IRIX 5.3 131 313 671 278 641 pentium Linux 1.1.54 157 658 1030 1164 1591 alpha OSF1 V2.1 185 404 718 428 851 ss20.50 SunOS 5.4 194 590 935 560 1196 ss20.61 SunOS 5.4 150 414 622 335 784 *Local* Communication bandwidths in megabytes/second ---------------------------------------------------- Host OS Pipe TCP File Mmap Bcopy Bcopy Mem Mem reread reread (libc) (hand) read write --------- ------------- ---- ---- ------ ------ ------ ------ ---- ----- rs6000 AIX 2 34 6.0 76.1 63.0 81 120 99 169 Glock.COM FreeBSD 2.1.0 15 0.2 22.8 40.6 32 30 53 70 Glock.COM FreeBSD 2.1.0 16 0.2 22.7 41.2 33 31 54 73 mako HP-UX A.09.01 27 18.7 34.4 22.5 22 24 45 39 seahorse HP-UX A.09.03 38 35.2 44.7 32.1 25 31 49 52 snake HP-UX A.09.01 19 17.8 34.4 22.3 22 24 45 39 IP22 IRIX 5.3 34 22.1 32.3 43.7 32 31 69 66 pentium Linux 1.1.54 13 2.4 9.8 4.7 18 18 48 32 alpha OSF1 V2.1 32 12.1 39.4 22.7 39 41 76 78 ss20.50 SunOS 5.4 11 11.0 22.9 30.0 26 31 80 62 ss20.61 SunOS 5.4 24 19.5 31.0 30.7 23 24 59 40 Memory latencies in nanoseconds (WARNING - may not be correct, check graphs) -------------------------------------------- Host OS Mhz L1 $ L2 $ Main mem TLB Guesses --------- ------------- --- ---- ---- -------- --- ------- rs6000 AIX 2 61 15 229 247 776 No L2 cache? Glock.COM FreeBSD 2.1.0 89 11 138 202 528 Glock.COM FreeBSD 2.1.0 89 11 129 202 527 mako HP-UX A.09.01 65 - - - - Bad mhz? seahorse HP-UX A.09.03 98 10 10 393 481 No L1 cache? snake HP-UX A.09.01 65 15 15 378 1051 No L1 cache? IP22 IRIX 5.3 197 10 76 1018 1129 pentium Linux 1.1.54 90 11 294 439 1254 alpha OSF1 V2.1 182 10 56 321 452 ss20.50 SunOS 5.4 49 20 284 291 575 No L2 cache? ss20.61 SunOS 5.4 60 16 115 816 961 L M B E N C H 1 . 0 S U M M A R Y ------------------------------------ Comparison to best of the breed ------------------------------- (Best numbers are starred, i.e., *123) Processor, Processes - factor slower than the best -------------------------------------------------- Host OS Mhz Null Null Simple /bin/sh Mmap 2-proc 8-proc Syscall Process Process Process lat ctxsw ctxsw --------- ------------- ---- ------- ------- ------- ------- ---- ------ ------ rs6000 AIX 2 62 7.7 *1.9K 1.3 1.4 116 *20 1.1 Glock.COM FreeBSD 2.1.0 90 3.7 1.8 3.1 1.6 4.6 1.6 1.3 Glock.COM FreeBSD 2.1.0 90 3.0 1.7 2.9 1.5 4.8 1.7 1.3 mako HP-UX A.09.01 65 7.3 1.4 *5.5K 1.0 4.7 1.2 *29 seahorse HP-UX A.09.03 99 4.7 1.8 1.8 1.1 3.5 2.4 1.9 snake HP-UX A.09.01 66 7.0 1.3 1.0 *16.4K 4.7 2.0 1.3 IP22 IRIX 5.3 198 3.7 1.6 1.4 1.1 7.9 3.3 3.2 pentium Linux 1.1.54 91 *3 1.7 2.7 3.0 *33 1.2 1.4 alpha OSF1 V2.1 182 4.3 2.4 2.9 2.6 5.2 2.7 2.9 ss20.50 SunOS 5.4 50 3.0 5.4 10 6.7 3.9 1.9 1.8 ss20.61 SunOS 5.4 61 2.3 4.0 8.2 5.2 3.2 ??? ??? *Local* Communication latencies - factor slower than the best ------------------------------------------------------------- Host OS Pipe UDP RPC/ TCP RPC/ UDP TCP --------- ------------- ------- ------- ------- ------- ------- rs6000 AIX 2 1.1 1.6 1.7 1.9 1.7 Glock.COM FreeBSD 2.1.0 1.1 1.2 1.0 1.3 *616 Glock.COM FreeBSD 2.1.0 1.1 1.2 *479 1.3 1.1 mako HP-UX A.09.01 2.2 1.7 2.7 1.4 1.9 seahorse HP-UX A.09.03 1.5 *244 1.7 *262 1.3 snake HP-UX A.09.01 2.3 1.7 2.5 1.4 1.9 IP22 IRIX 5.3 *131 1.3 1.4 1.1 1.0 pentium Linux 1.1.54 1.2 2.7 2.2 4.4 2.6 alpha OSF1 V2.1 1.4 1.7 1.5 1.6 1.4 ss20.50 SunOS 5.4 1.5 2.4 2.0 2.1 1.9 ss20.61 SunOS 5.4 1.1 1.7 1.3 1.3 1.3 *Local* Communication bandwidths - percentage of the best --------------------------------------------------------- Host OS Pipe TCP File Mmap Bcopy Bcopy Mem Mem reread reread (libc) (hand) read write --------- ------------- ---- ---- ------ ------ ------ ------ ---- ----- rs6000 AIX 2 89% 17% *76 *63 *80 *119 *98 *168 Glock.COM FreeBSD 2.1.0 40% 0% 29% 64% 40% 24% 53% 41% Glock.COM FreeBSD 2.1.0 42% 0% 29% 65% 41% 25% 54% 43% mako HP-UX A.09.01 69% 52% 45% 35% 27% 19% 45% 23% seahorse HP-UX A.09.03 *38 *35 58% 50% 31% 25% 49% 30% snake HP-UX A.09.01 49% 50% 45% 35% 27% 19% 45% 23% IP22 IRIX 5.3 88% 62% 42% 69% 39% 25% 69% 38% pentium Linux 1.1.54 32% 6% 12% 7% 22% 14% 48% 19% alpha OSF1 V2.1 83% 34% 51% 36% 48% 33% 76% 46% ss20.50 SunOS 5.4 29% 31% 30% 47% 31% 25% 80% 36% ss20.61 SunOS 5.4 62% 55% 40% 48% 28% 19% 59% 23% Memory latencies in nanoseconds - factor slower than the best (WARNING - may not be correct, check graphs) ------------------------------------------------------------- Host OS Mhz L1 $ L2 $ Main mem TLB Guesses --------- ------------- --- ---- ---- -------- --- ------- rs6000 AIX 2 61 1.5 ??? 1.2 1.7 No L2 cache? Glock.COM FreeBSD 2.1.0 89 1.1 14 *202 1.2 Glock.COM FreeBSD 2.1.0 89 1.1 13 *202 1.2 mako HP-UX A.09.01 65 - - - - Bad mhz? seahorse HP-UX A.09.03 98 ??? *10 1.9 1.1 No L1 cache? snake HP-UX A.09.01 65 ??? 1.5 1.9 2.3 No L1 cache? IP22 IRIX 5.3 197 *10 7.6 5.0 2.5 pentium Linux 1.1.54 90 1.1 29 2.2 2.8 alpha OSF1 V2.1 182 *10 5.6 1.6 *452 ss20.50 SunOS 5.4 49 2.0 ??? 1.4 1.3 No L2 cache? ss20.61 SunOS 5.4 60 1.6 12 4.0 2.1 =============================================================================== -- Matthew C. Mead mmead@Glock.COM http://www.Glock.COM/~mmead/