cgraph based inlining heuristics
Jan Hubicka
jh@suse.cz
Wed Jul 2 11:13:00 GMT 2003
> Hi,
> the attached patch implements callgraph based inlining heuristics. For
> SPEC2000 it makes little difference (about 5% compilation time/code size
> savings for eon, but I am still running the test), but for template
> heavy inlining code it can save quite a lot of compilation time.
Here are the promised SPEC scores relative to mainline.
eon is 14% smaller and still slightly faster.
Also the bootstrap times with -funit-at-a-time enabled by default are
now few seconds shorter than bootstrap times without it.
Size of binaries:
164.gzip: Base: 59720 bytes
164.gzip: Peak: 59656 bytes
175.vpr: Base: 158808 bytes
175.vpr: Peak: 158456 bytes
176.gcc: Base: 1727744 bytes
176.gcc: Peak: 1674240 bytes
181.mcf: Base: 20816 bytes
181.mcf: Peak: 20816 bytes
186.crafty: Base: 206048 bytes
186.crafty: Peak: 206016 bytes
197.parser: Base: 136608 bytes
197.parser: Peak: 154560 bytes
252.eon: Base: 572800 bytes
252.eon: Peak: 501024 bytes
253.perlbmk: Base: 667992 bytes
253.perlbmk: Peak: 700632 bytes
254.gap: Base: 537464 bytes
254.gap: Peak: 551768 bytes
255.vortex: Base: 638120 bytes
255.vortex: Peak: 630952 bytes
256.bzip2: Base: 58216 bytes
256.bzip2: Peak: 58216 bytes
300.twolf: Base: 201488 bytes
300.twolf: Peak: 206640 bytes
=============================
Total: Base: 4985824 bytes
Total: Peak: 4922976 bytes
Total time for base compilation: 376 s
Total time for peak compilation: 374 s
164.gzip 1400 205 682* 1400 199 705*
175.vpr 1400 183 767* 1400 186 753*
176.gcc 1100 131 841* 1100 132 833*
181.mcf 1800 351 513* 1800 352 511*
186.crafty 1000 80.8 1238* 1000 80.7 1239*
197.parser 1800 336 535* 1800 330 545*
252.eon 1300 138 940* 1300 136 957*
253.perlbmk 1800 218 827* 1800 217 830*
254.gap 1100 157 702* 1100 157 701*
255.vortex 1900 173 1095* 1900 176 1081*
256.bzip2 1500 200 751* 1500 200 750*
300.twolf 3000 386 776* 3000 374 802*
Est. SPECint_base2000 782
Est. SPECint2000 785
Honza
More information about the Gcc-patches
mailing list