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