If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Compilation Times, Binary Sizes For GCC 4.2 To GCC 4.8

03-17-2013, 01:00 PM

Phoronix: Compilation Times, Binary Sizes For GCC 4.2 To GCC 4.8

Compiler benchmarks at Phoronix commonly look at the performance of resulting binaries while less of a focus is the compilation time and binary sizes. However, a developer has carried out GCC benchmarks of the compilation times and binary sizes in different scenarios for GCC releases going from GCC 4.2 to the upcoming GCC 4.8...

Only thing that matters is the end result.
In form of accuracy, speed and code size.
I would gladly have a 10 times slower compiler if it was guaranteed to produce 10% faster code on absolute average.
I don't get why compilation speed is such a big deal when binary speed is the final result users will see?
So who cares if the kernel takes 4 minutes or 6 minutes and 10 seconds to compile?
For all of you how do care about speed. Go play with TCC instead. It's an excellent compiler/assembler/linker.

Comment

People who compile things themselves care about how long it takes. If I want to create a patch and rebuild something, it's a lot more convenient if it only takes 15 minutes rather than 2 and a half hours to compile.

Comment

People who compile things themselves care about how long it takes. If I want to create a patch and rebuild something, it's a lot more convenient if it only takes 15 minutes rather than 2 and a half hours to compile.

Right. I don't care if release builds take twice as long to produce faster-executing code. But as a developer, efficiency of the compiler is a big factor in my own productivity - I'm not going to get much done if every little change means I might as well go and grab a coffee...

Comment

Only thing that matters is the end result.
In form of accuracy, speed and code size.
I would gladly have a 10 times slower compiler if it was guaranteed to produce 10% faster code on absolute average.
I don't get why compilation speed is such a big deal when binary speed is the final result users will see?
So who cares if the kernel takes 4 minutes or 6 minutes and 10 seconds to compile?
For all of you how do care about speed. Go play with TCC instead. It's an excellent compiler/assembler/linker.

You are obviously NOT a developer. If I'm coding and I make 1 change and I re-compile to test it, I'd rather not have to think to myself "Well....I'm gonna be here for a while." For release builds code-speed may be more important, but for test builds? A 10-second kernel build? i would be beyond happy. Itd be like a free hardware upgrade to me haha

Comment

You are obviously NOT a developer. If I'm coding and I make 1 change and I re-compile to test it, I'd rather not have to think to myself "Well....I'm gonna be here for a while." For release builds code-speed may be more important, but for test builds? A 10-second kernel build? i would be beyond happy. Itd be like a free hardware upgrade to me haha

Well yeah but then you don't get to do this:
:P

but seriously... milklainen compile time is wildly important for developers because the more time we're waiting for our code to compile the less time we're spending actually working on or testing code.

Comment

I've got a 955BE and compile time is like nothing. At most even on huge packages like the kernel or gtk or firefox it only takes a few minutes. And most other packages take less than a minute or even just a few seconds. I can't imagine that compile time is still much of a problem.

My emerge -e world is over 700 packages and it only takes about an hour and a half.

Comment

duby229: Yes, but how many people can afford one of those? And with that kind of speed, does optimization still make a diffference?

I've got a laptop with a dual-core AMD Neo@1.6GHz, with 1 GB RAM. I build my kernel from source, because I use Debian stable, my laptop isn't properly supported in 2.6.32 (X100e thinkpad-acpi, rtl8192se...), and I want kernel updates on time. I also build several other programs/libraries on a fairly regular basis, so compilation time is rather important.
FWIW, compile time is the reason the kernel developers supported gcc 2.95 as long as they did: it's several times faster.
TCC is an interesting project, but it has some serious limitations, meaning that it can't compile anywhere near as much software.

The article is somewhat disappointing: I expected there to be a comparison of output file sizes.