Gcc
From AdminWiki
(Difference between revisions)
Line 122: | Line 122: | ||
sys 0m0.220s | sys 0m0.220s | ||
</pre> | </pre> | ||
+ | |||
+ | ==Conclusion== | ||
+ | |||
+ | The more recent gcc version trade off compile time for run-time speed. |
Revision as of 01:19, 4 June 2006
Contents |
Introduction
Performance
There was much discussion about the performance in the largely rewritten 4.0 and 4.1 branches. Here are some hard numbers:
Software environment
I chose to test lame 3.97 since it's been done in the past and it's easy to reproduce although I doubt that it's a good testcase.
- lame 3.97b2
- Debian testing from 4th of June 2006.
- linux 2.4.27 on an AMD Athlon(TM) XP 2100+, clocked at 1312.944 mhz with 256kb l2 cache
gcc-3.4 (GCC) 3.4.6 (Debian 3.4.6-1) gcc-4.0 (GCC) 4.0.4 20060507 (prerelease) (Debian 4.0.3-3) gcc-4.1 (GCC) 4.1.1 20060511 (prerelease) (Debian 4.1.0-4)
Compile times
make distclean > /dev/null && sync && ./configure > /dev/null && time make > /dev/null
gcc 3.4
real 0m59.026s user 0m54.250s sys 0m4.560s real 0m58.953s user 0m54.480s sys 0m4.300s real 0m58.996s user 0m54.450s sys 0m4.390s
gcc 4.0
real 1m6.599s user 1m1.780s sys 0m4.420s real 1m6.412s user 1m1.820s sys 0m4.440s real 1m6.534s user 1m1.810s sys 0m4.410s
gcc 4.1
real 1m14.442s user 1m9.870s sys 0m4.390s real 1m14.401s user 1m9.690s sys 0m4.510s real 1m14.419s user 1m9.500s sys 0m4.740s
Run times
time ./lame-4.1 --quiet -V2 03-Massive_Attack_-_Teardrop.wav /dev/null
gcc 3.4
real 0m58.770s user 0m58.170s sys 0m0.370s real 0m58.412s user 0m58.130s sys 0m0.240s real 0m58.404s user 0m58.080s sys 0m0.240s
gcc 4.0
real 0m56.897s user 0m56.570s sys 0m0.180s real 0m56.547s user 0m56.350s sys 0m0.170s real 0m56.646s user 0m56.380s sys 0m0.230s
gcc 4.1
real 0m54.680s user 0m54.300s sys 0m0.270s real 0m54.656s user 0m54.430s sys 0m0.200s real 0m54.599s user 0m54.340s sys 0m0.220s
Conclusion
The more recent gcc version trade off compile time for run-time speed.