Bruce Momjian wrote:

Jeff wrote:


On Wed, 8 Oct 2003, Neil Conway wrote:



What CFLAGS does configure pick for gcc? From
src/backend/template/solaris, I'd guess it's not enabling any
optimization. Is that the case? If so, some gcc numbers with -O and -O2
would be useful.



I can't believe I didn't think of this before! heh.
Turns out gcc was getting nothing for flags.

I added -O2 to CFLAGS and my 60 seconds went down to 21.  A rather mild
improvment huh?

I did a few more tests and suncc still beats it out - but not by too much
now (Not enought to justify buying a license just for compiling pg)

I'll go run the regression test suite with my gcc -O2 pg and the suncc pg.
See if they pass the test.

If they do we should consider adding -O2 and -fast to the CFLAGS.



[ CC added for hackers.]


Well, this is really embarassing.  I can't imagine why we would not set
at least -O on all platforms.  Looking at the template files, I see
these have no optimization set:
        
        darwin
        dgux
        freebsd (non-alpha)
        irix5
        nextstep
        osf (gcc)
        qnx4
        solaris
        sunos4
        svr4
        ultrix4

I thought we used to have code that did -O for any platforms that set no
cflags, but I don't see that around anywhere.  I recommend adding -O2,
or at leaset -O to all these platforms --- we can then use platform
testing to make sure they are working.



Actually, I would not be surprised to see gains on Solaris/SPARC from -O3 with gcc, which enables inlining and register-renaming, although this does make debugging pretty much impossible.

worth testing at least (but I no longer have access to a Solaris machine).

cheers

andrew


---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly

Reply via email to