This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Comparing compile times and binary size for GCC compiling a few GCC releases


Hello,

Below are some compile times and sizes I measured for a bunch of GCC releases.

The test compilers are listed in the tables. All of them were compiled
with gcc 4.7.2 (i.e. not bootstrapped). Test machine is gcc110
(powerpc64) which was otherwise idle. Times are "user" times in
seconds, from /usr/bin/time. GCC 4.4 is not included because it failed
to build with default configure options (linker error, "undefined
reference to symbol 'ppl_finalize'").

Interesting observations:
* GCC 4.8.0 is not slower than, say, GCC 4.2.4 for an optimized non-debug build.
* with debug info, compilation time has increased by ~17% (but debug
info is much more accurate than before)
* cc1 for GCC 4.8.0 cc1 is 2 times the size of cc1 for GCC 4.2.4!
* cc1 for GCC 4.8.0 has a much larger .bss section than previous releases

I started looking into this because I've noticed compilations of many
small files being slower. I wonder if the larger cc1 and .bss sections
could be in part responsible for that...?

Ciao!
Steven



Test set are cc1-i files for trunk r189478, configured with release checking:

Compiler flags: -S -O2 -fpreprocessed:
	Run 1	Run 2	Run 3	Avg	Diff
4.2.4	368.72	368.72	368.85	369	0.0%
4.3.6	337.28	336.01	336.18	336	-8.9%
4.5.4	335.73	337.86	339.75	338	-8.4%
4.6.3	343.95	345.86	341.11	344	-6.8%
4.7.2	370.06	369.66	376.77	372	0.8%
4.8.0	374.84	373.59	374.13	374	1.4%

Compiler flags: -S -O2 -g -fpreprocessed:										
	Run 1	Run 2	Run 3	Avg	Diff
4.2.4	391.47	390.43	393.22	392	0.0%
4.3.6	356.55	357.02	358.14	357	-8.9%
4.5.4	389.00	389.50	396.37	392	0.0%
4.6.3	418.18	420.67	426.80	422	7.7%
4.7.2	444.98	445.67	452.52	448	14.3%
4.8.0	456.81	456.96	468.29	461	17.6%


cc1 binary size:
text            data    bss     dec             hex     filename
6460157         374800  535656  7370613         707775  4.2.4/cc1
7558042         666080  436744  8660866         842782  4.3.6/cc1
10917491        775144  684544  12377179        bcdc5b  4.5.4/cc1
11715323        489512  984224  13189059        c93fc3  4.6.3/cc1
12351879        484968  1193672 14030519        d616b7  4.7.2/cc1
13731087        499080  781496  15011663        e50f4f  4.8.0/cc1

Top 10 files:
4.2.4 (327 .o files):
   text    data     bss     dec     hex filename
 102176    1504     212  103892   195d4 combine.o
 110096    7728    1429  119253   1d1d5 builtins.o
 124368    2304      28  126700   1eeec fold-const.o
 129724    3112    2804  135640   211d8 c-common.o
 142719    6032     992  149743   248ef dwarf2out.o
 173416     216       0  173632   2a640 insn-attrtab.o
 195168   18144     448  213760   34300 rs6000.o
 206575   14848       0  221423   360ef insn-emit.o
 305932    1368       0  307300   4b064 insn-recog.o
 742464     264      16  742744   b5558 insn-automata.o
7000225  459384  473148 7932757  790b55 (TOTALS)

4.3.6 (354 .o files):
   text    data     bss     dec     hex filename
 104936    1616     204  106756   1a104 combine.o
 134040    8840    1429  144309   233b5 builtins.o
 142897    2512      28  145437   2381d fold-const.o
 145850    3464    2992  152306   252f2 c-common.o
 153631    6424    1032  161087   2753f dwarf2out.o
 215076   19232     480  234788   39524 rs6000.o
 228427   16416       0  244843   3bc6b insn-emit.o
 247248     240       0  247488   3c6c0 insn-attrtab.o
 316300    1288       0  317588   4d894 insn-recog.o
 803520     296      16  803832   c43f8 insn-automata.o
7941854  750682  348048 9040584  89f2c8 (TOTALS)

4.5.4 (393 .o files):
   text    data     bss     dec     hex filename
 115029    3081     160  118270   1cdfe c-decl.o
 156564    9376     975  166915   28c03 builtins.o
 176650    3996    3080  183726   2cdae c-common.o
 196683    2720      28  199431   30b07 fold-const.o
 224735    8665    1200  234600   39468 dwarf2out.o
 263028   23560    3080  289668   46b84 rs6000.o
 311123   22944       0  334067   518f3 insn-emit.o
 383160     264       0  383424   5d9c0 insn-attrtab.o
 392932    1592       0  394524   6051c insn-recog.o
1714644     320      16 1714980  1a2b24 insn-automata.o
10907556         880995  436874 12225425         ba8b91 (TOTALS)

4.6.3 (409 .o files):
   text    data     bss     dec     hex filename
 157700    9352      63  167115   28ccb builtins.o
 164455     224       0  164679   28347 gcc-options.o
 195747     328       0  196075   2fdeb options.o
 198157    2432      28  200617   30fa9 fold-const.o
 249087    9017    1200  259304   3f4e8 dwarf2out.o
 281748   24060    3152  308960   4b6e0 rs6000.o
 373251   23600       0  396851   60e33 insn-emit.o
 395996    1464       0  397460   61094 insn-recog.o
 641624    1624       0  643248   9d0b0 insn-attrtab.o
1729733     344      16 1730093  1a662d insn-automata.o
11917280         545628  280335 12743243         c2724b (TOTALS)

4.7.2 (436 .o files):
   text    data     bss     dec     hex filename
 124325    3009     152  127486   1f1fe c-decl.o
 165972   11112      63  177147   2b3fb builtins.o
 186159     448       0  186607   2d8ef options.o
 204102    2520      28  206650   3273a fold-const.o
 263384    8344     956  272684   4292c dwarf2out.o
 321860   10516    3296  335672   51f38 rs6000.o
 364559   23520       0  388079   5ebef insn-emit.o
 368024    1296       0  369320   5a2a8 insn-recog.o
 628600    1624       0  630224   99dd0 insn-attrtab.o
1730405     344      16 1730765  1a68cd insn-automata.o
12544997         547239  295406 13387642         cc477a (TOTALS)

4.8.0 (440 .o files):
   text    data     bss     dec     hex filename
 179600   11464   10255  201319   31267 builtins.o
 210363     672    5680  216715   34e8b options.o
 219562    2608      32  222202   363fa fold-const.o
 277147     736       0  277883   43d7b insn-latencytab.o
 309396    9660    1140  320196   4e2c4 dwarf2out.o
 309845     744       0  310589   4bd3d insn-dfatab.o
 354656   10820   28640  394116   60384 rs6000.o
 365500    1304       0  366804   598d4 insn-recog.o
 420579   23056       0  443635   6c4f3 insn-emit.o
1648133     336      16 1648485  192765 insn-automata.o
13735454         575702  831821 15142977         e71041 (TOTALS)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]