GCC3.0 Produce REALLY slower code!
Hello All!
Some tests that I have recently check out.
kernel compiled with 3.0 (2.4.5) function call: 1000000 iteration. 3% slower than 2.95.
test example - hash table add/remove - 4% slower (compiled both with -O2 -march=i686).
Why have this version been released?
Best regards,
Alexander mailto:[email protected]
Quoted 6 lines · Alexander V. Bilichenko
Some tests that I have recently check out. kernel compiled with 3.0 (2.4.5) function call: 1000000 iteration. 3% slower than 2.95. test example - hash table add/remove - 4% slower (compiled both with -O2 -march=i686).
Why have this version been released?
It would be better to ask that to the GCC people, but I suspect it was released because it was (almost) stable and the only way to do the last small tweaks to the code would be to have it tested in the field ?
Rik
--
Executive summary of a recent Microsoft press release:
"we are concerned about the GNU General Public License (GPL)"
http://www.surriel.com/
Quoted 7 lines · Rik van Riel
Quoted 4 lines · Alexander V. Bilichenko
Some tests that I have recently check out. kernel compiled with 3.0 (2.4.5) function call: 1000000 iteration. 3% slower than 2.95. test example - hash table add/remove - 4% slower (compiled both with -O2 -march=i686).
Quoted 7 lines
Quoted 1 line
Why have this version been released?
It would be better to ask that to the GCC people, but I suspect it was released because it was (almost) stable and the only way to do the last small tweaks to the code would be to have it tested in the field ?
Actually I think the just one very good reason to use gcc 3.0 is if you are programming using C++. It's a kind of paradise for C++ programmers. So I had to install it on my servers used by C++ programmers, they were so happy...
To use C, it's better to avoid gcc 3.0, it's just slower. All bench i did, it's slower about 3/5% depending on the kind of code. It is faster just on some floating point with really small code, (I used optimizzations for athlon CPU).
Luigi
In article <[email protected]> you write:
Quoted 1 line
All bench i did, it's slower about 3/5% depending on the kind of code.
On Alpha machines (ev4 and ev56), it seems actually to be the opposite on integer calculation: gcc-3.0 produces code up to 5% faster than gcc-2.95.2. The result is still 25% behind the Compaq C compiler, though.
By the way, the installation procedure is mostly buggy on old Alpha systems (RedHat 5.1 -> binutils 2.9, glibc 2.0.7). I do not mind gcc having some requirements about versions of such other tools, but it could be made a bit more explicit, and the configuration script should also emit some warnings (it detects the versions installed, it just does not bother reporting the potential problem).
--Thomas Pornin
Quoted 9 lines · Alexander V. Bilichenko
Hello All!
Some tests that I have recently check out.
kernel compiled with 3.0 (2.4.5) function call: 1000000 iteration. 3% slower than 2.95.
test example - hash table add/remove - 4% slower (compiled both with -O2 -march=i686).
Why have this version been released?
Best regards,
Alexander mailto:[email protected]
Err, thanks for the benchmarks, but how does this qualify as 'really' slower?
Disassemblies of the inner loops would be very informative.
--
Daniel
Quoted 7 lines · Alexander V. Bilichenko
Hello All!
Some tests that I have recently check out.
kernel compiled with 3.0 (2.4.5) function call: 1000000 iteration. 3% slower than 2.95.
test example - hash table add/remove - 4% slower (compiled both with -O2 -march=i686).
Why have this version been released?
Because it comes with various other improvements, among them better error detection, better C++ support, integrated GCJ (but regretfully still without Ada 95), to name a few reasons.
3% to 4% loss in a first release of a new major release is not a big deal, although I found similar results on leafnode's texpire. However, 3% do not warrant me spending my time complaining. Maybe some optimization is missing, maybe other operations than the ones you checked are faster. So there.
You might run an entire benchmark suite and report back, tough. :-)
Although I just wanna say that there is no reason trying compile kernel with new shiny GCC 3.0 ;-). The result will be in kernel slowdown.
Maybe, we can try to use Intel C compiler for some important ;-) (beta version work with linux).
Best regards,
Alexander mailto:[email protected]
------------------------------------------------------
Let start the war, said Meggy
------------------------------------------------------
----- Original Message -----
From: "Matthias Andree" <[email protected]>
To: "Alexander V. Bilichenko" <[email protected]>
Cc: <[email protected]>
Sent: Monday, June 25, 2001 1:16 PM
Subject: Re: GCC3.0 Produce REALLY slower code!
Quoted 5 lines · Alexander V. Bilichenko
Quoted 4 lines
Hello All!
Some tests that I have recently check out.
kernel compiled with 3.0 (2.4.5) function call: 1000000 iteration. 3%
slower
Quoted 22 lines
Quoted 4 lines
than 2.95.
test example - hash table add/remove - 4% slower (compiled both with -O2 -march=i686).
Why have this version been released?Because it comes with various other improvements, among them better error detection, better C++ support, integrated GCJ (but regretfully still without Ada 95), to name a few reasons.
3% to 4% loss in a first release of a new major release is not a big deal, although I found similar results on leafnode's texpire. However, 3% do not warrant me spending my time complaining. Maybe some optimization is missing, maybe other operations than the ones you checked are faster. So there.
You might run an entire benchmark suite and report back, tough. :-) -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/