From owner-freebsd-current Thu Dec 2 5:30:15 1999 Delivered-To: freebsd-current@freebsd.org Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by hub.freebsd.org (Postfix) with ESMTP id 3CB3214E8D for ; Thu, 2 Dec 1999 05:30:11 -0800 (PST) (envelope-from bde@zeta.org.au) Received: from bde.zeta.org.au (beefcake.zeta.org.au [203.26.10.12]) by mailman.zeta.org.au (8.8.7/8.8.7) with ESMTP id AAA26591; Fri, 3 Dec 1999 00:34:07 +1100 Date: Fri, 3 Dec 1999 00:26:57 +1100 (EST) From: Bruce Evans X-Sender: bde@alphplex.bde.org To: Ville-Pertti Keinonen Cc: current@freebsd.org, marcel@scc.nl, dillon@apollo.backplane.com Subject: Re: kernel: -mpreferred-stack-boundary=2 ?? In-Reply-To: <19991202094037.4079.qmail@ns.demophon.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On 2 Dec 1999, Ville-Pertti Keinonen wrote: >... > Note that double-alignment vs. word-alignment can really have >30% > performance impact, at least on an Athlon and one meaningless floating > point microbenchmark (operations on small, fixed-sized > matrices...maybe it isn't even *that* meaningless). I verified that the default alignment is a pessimisation of 1% for a meaningful benchmark (compiling a RELENG_3 kernel) on a Celeron: gcc (current) compiled with gcc: 29.00 real 11.42 user 2.28 sys 158.47 real 146.48 user 10.35 sys 13.58 real 11.31 user 2.20 sys 157.99 real 146.16 user 11.19 sys 13.58 real 11.37 user 2.14 sys 158.06 real 146.57 user 10.87 sys gcc (current) compiled with gcc -mpreferred-stack-boundary=2: 13.42 real 10.92 user 2.34 sys 156.94 real 144.14 user 11.16 sys 13.29 real 10.87 user 2.34 sys 156.43 real 144.22 user 11.23 sys 13.30 real 10.85 user 2.38 sys 156.14 real 144.70 user 10.73 sys The times are for `time make depend; time make' after `make clean; sync; sleep 1' (2 times for each run). The stack may have been perfectly misaligned for the default gcc. Corresponding times for egcs with various PQ_L2_SIZE's a few months ago: 16 pages: 28.50 real 11.78 user 2.62 sys 140.53 real 129.08 user 10.55 sys 14.17 real 11.72 user 2.43 sys 140.27 real 129.13 user 10.83 sys 14.15 real 11.77 user 2.35 sys 140.45 real 129.25 user 10.85 sys 32 pages: 28.57 real 11.60 user 2.69 sys 139.89 real 129.34 user 9.74 sys 14.09 real 11.67 user 2.39 sys 139.65 real 128.91 user 10.42 sys 14.06 real 11.57 user 2.45 sys 139.80 real 129.10 user 10.33 sys 64 pages: 28.51 real 11.88 user 2.46 sys 140.12 real 129.18 user 10.01 sys 14.11 real 11.59 user 2.49 sys 139.98 real 129.10 user 10.67 sys 14.10 real 11.89 user 2.18 sys 140.24 real 129.24 user 10.59 sys 128 pages: 28.11 real 11.94 user 2.40 sys 140.14 real 129.11 user 10.14 sys 14.08 real 11.82 user 2.23 sys 139.97 real 129.01 user 10.66 sys 14.09 real 11.64 user 2.44 sys 140.22 real 129.15 user 10.83 sys 256 pages: 28.31 real 11.74 user 2.45 sys 139.87 real 128.90 user 10.13 sys 14.17 real 11.67 user 2.48 sys 139.58 real 129.36 user 9.95 sys 14.15 real 11.49 user 2.60 sys 139.90 real 129.07 user 10.45 sys Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message