Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Apr 2000 14:34:43 -0700 (PDT)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Kris Kennaway <kris@FreeBSD.ORG>
Cc:        "Alexey N. Dokuchaev" <danfe@inet.ssc.nsu.ru>, freebsd-hackers@FreeBSD.ORG
Subject:   Re: What are the best gcc optimization options for Pentium 200 MMX
Message-ID:  <200004082134.OAA12743@apollo.backplane.com>
References:   <Pine.BSF.4.21.0004081416110.70551-100000@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
:On Sat, 8 Apr 2000, Alexey N. Dokuchaev wrote:
:
:> AFAIK, Linux Mandrake has it's kernel and userland highly optimized for
:> Pentium architecture.  However, they have additional gcc optimization 
:> flags turned on by default, including -O3 and -mfast_math.
:
:Can you say "gimmick"? :-) gcc often produces demonstrably broken code for
:optimisation levels higher than -O.
:
:Probably the only useful and safe option apart from -O is the
:-march=pentium/pentiumpro/pentiumii/etc option for using
:processor-specific opcodes and instruction scheduling.
:Kris

    I use -Os for everything.  I wouldn't bother with anything else.  Someone
    ran a bunch of benchmarks with various gcc/egcs options a while back
    and, frankly, the top half dozen combinations were so close to each
    other performance-wise that it just didn't matter.  -Os was in that
    group, but also produced significantly smaller binaries.

    I wouldn't touch the -march stuff at all, nor would I use -O3 (which
    tries to inline standard static functions verses -O2) - that's useless
    on IA32 because call/returns are very fast (I had an argument with John
    Dyson about call/return overhead verses an L1 cache miss and
    we ran a bunch of timings.  I lost the argument :-) call/return won the
    race handily).


					-Matt
					Matthew Dillon 
					<dillon@backplane.com>


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200004082134.OAA12743>