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>