What happened there at graphics magic tests? Do the newer gccs utilize OpenMP that much better?
Phoronix: Compiler Benchmarks Of GCC, LLVM-GCC, DragonEgg, Clang
LLVM 2.8 was released last month with the Clang compiler having feature-complete C++ support, enhancements to the DragonEgg GCC plug-in, a near feature-complete alternative to libstdc++, a drop-in system assembler, ARM code-generation improvements, and many other changes. With there being great interest in the Low-Level Virtual Machine, we have conducted a large LLVM-focused compiler comparison at Phoronix of GCC with versions 4.2.1 through 4.6-20101030, GCC 4.5.1 using the DragonEgg 2.8 plug-in, LLVM-GCC with LLVM 2.8 and GCC 4.2, and lastly with Clang on LLVM 2.8.
http://www.phoronix.com/vr.php?view=15422
What happened there at graphics magic tests? Do the newer gccs utilize OpenMP that much better?
this template footer found in nearly every phoronix article, sounds like "please disregard this article, it's going to be obsolete soon"While LLVM/Clang is not yet decisively faster than GCC, it is continuing to make great progress and does boast a different feature-set and focus from the GNU Compiler Collection.
quite nice.
it seems llvm likes c-ray but no chess.
what id like to see now is a linux kernel (compiled with these different compilers) performance benchmark.
a thing that bothers me aswell is the fact that there are being "regressions found" on intel cpu whereas there is a huge performance improvement on AMD (or vice versa). maybe one should take this into account when looking for regressions. as far as i remember there have only been benchmarks with intel hardware...
and as the graphs show there really are some interesting splits in performance with different hardware
Sorry, that was ambiguous. As in, Linux kernel compiling can't be done with llvm.
I may have missed it but what optimizations were used for these tests (especially for gcc)?
More, less?Code:-march=native -mtune=native -fomit-frame-pointer -O3
-mtune=native is redundant if you're using -march=native.
-fomit-frame-pointer breaks debuggability in x86.
-O3 has bugs and might slow down run-time in many cases.
Good article, nice graphs and happy bday!
I'd bet with time that LLVM using compilers will catch up to GCC in the rest of the tests.
What compiler flags were used to build each package? These benchmarks are out of context without that information.