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.

TODO:
- I will also add ICC and make an AUR for open64 and LCC (builds fail atm)
- 32bit tests, include SolarisStudio and openWatcom

The weird thing about these results is that it seems like TCC is beating all of the other compilers handsomely (I would have expected GCC to be the performance choice) and also PCC gives surprisingly good results.

I exported
CC=/path/to/compiler
CXX=/path/to/compiler
and did not add any extra flags (planning on trying -x c for PCC for GCC compatibility mode)

I had to manually edit the xml file to set the compiler info for system-info correctly for each set up in the comparison (I noticed that too late, hence the "spamming" of global.phoronix.com)

Comment

The really interesting part is how tcc-compiled executables seem to be faster than the gcc-compiled ones. The tcc documentation doesn't list any flags for optimisation, so my hunch is that tcc optimises more aggressively than gcc by default. Could you run the benchmark again, but set CFLAGS to -O2?

Comment

I wonder if it is possible to compile the kernel with tcc and if it will bring any benefits.

Apparently one used to be able to compile linux with TCC, or even run it "just in time" directly from C-code.

No idea whether this still works.

It will be interesting to see if the trend stays the same for 32bit and how the compilers compare to Open64, LCC, openWatcom and non-free ones like ICC and SolarisStudio. If I am able to, I would also like to package and test KenCC. To really make a real-world comparison I guess different optimization flags, different hardware etc needs to be compared though...

Comment

The really interesting part is how tcc-compiled executables seem to be faster than the gcc-compiled ones. The tcc documentation doesn't list any flags for optimisation, so my hunch is that tcc optimises more aggressively than gcc by default. Could you run the benchmark again, but set CFLAGS to -O2?

Sure I can try that too, although that will have to wait a bit I am afraid (I run the benchmarks over night). People are ofcoure welcome to repeat the experiments with other settings With more independent analyses, the comparisons will be more reliable.

Comment

TODO:
- I will also add ICC and make an AUR for open64 and LCC (builds fail atm)

Hey, good to see you want to test open64 but it's intended to be replaced by path64. I made an AUR package for path64 (https://aur.archlinux.org/packages.php?ID=41846). Hope you'll be able to test it If there is a problem with the package, please tell me

Comment

Hey, good to see you want to test open64 but it's intended to be replaced by path64. I made an AUR package for path64 (https://aur.archlinux.org/packages.php?ID=41846). Hope you'll be able to test it If there is a problem with the package, please tell me

Check the level of optimization was the same across all the compilers, there is something really *wrong* here, but I'm not a compiler guy at all.

So for 64-bit the TODO now includes: ICC, Open64, Path64, and possibly LCC
and after that I can try some CFLAGS, and for those that have it, alternative LD and AR etc...

For 32-bit there are lots of things left to do, but also a number of extra compilers available that look interesting...

The annoying thing is that it basically takes a whole night to run one of these tests on my laptop so the results will not come directly. I hope you guys are patient
I will post updates here as they come.