I did a comparison some time back between gcc and IBM's Xlc. The IBM
compiler was a bit slower to compile but the fully optimized executables
were quite different in performance. Xlc's executable ran 40% faster.
A look at the generated code showed that the IBM optimizer was carefully
matched to the machine and would eliminate big blocks of code by taking
advantage of its large register file and particular instructions.
I did a less rigorous test with gcc and lcc on a PC. Lcc compiled much
faster than gcc and ran much the same on well written code but gcc with
better optimization ran much better on indifferent code.
My conclusion was that on Intel machines gcc was the best overall
compiler choice. The combination of compile speed, executable quality
and compatibility with applications is hard to beat.
[EMAIL PROTECTED] wrote:
"C.Peachment" <[EMAIL PROTECTED]> wrote:
With the suggestion that the problem was a compiler bug
in PellesC for Windows, I posted a message on their forum.
One response suggested a couple of configuration changes
and also said to wait a while because it took a long time to
compile.
Fascinating.
GCC (version 4.1.0) takes less than 25 seconds to compile and
link a command-line shell using the amalgamation with full
optimization (-O3) - which as far as I know is as slow as
you can make the compiler run. With all optimization turned
off, the whole thing builds in 3.430 seconds (wall-clock time).
One of the reasons proffered for not using the amalgamation
is that compiles go faster if you do not have to recompile
the whole thing. I read that and thought "4 seconds is
too slow?" But perhaps GCC is just a really fast compiler
and the person who said that is just using a much slower
compiler.
I'm curious to see a comparison of the size and speed of
the executables that result from GCC and its more sluggish
competitors. Does anybody have any data?
--
D. Richard Hipp <[EMAIL PROTECTED]>
-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------