Announcement

Collapse
No announcement yet.

CompilerDeathMatch: surprising results

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • staalmannen
    started a topic CompilerDeathMatch: surprising results

    CompilerDeathMatch: surprising results

    Hi all

    I have played around a bit with comparing various compilers available to ARCH
    First off, I have been running the Free compilers for 64-bit:

    http://global.phoronix-test-suite.co...07-15267-29041

    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)

    Is there something I have done wrong or are these results for real???

  • staalmannen
    replied
    Final results in new thread

    I have presented the final results for discussion in a new thread

    Leave a comment:


  • staalmannen
    replied
    Originally posted by markg85 View Post
    Perhaps a bit late, but you aren't using the path64 compiler yet (which got mentioned on one of the first replies in this thread).

    Question. How do you compile apache (or anything) with a different compiler..? some steps please
    EDIT: the way I do the compiler comparisons is basically that I export the environmental variables CC and CXX = /path/to/compiler. I guess the same should work when manually compiling whatever you want to compile. In fact, that is exactly what I do in my makepkg.conf, where I have defined Clang as default compiler.

    Leave a comment:


  • staalmannen
    replied
    Originally posted by markg85 View Post
    Perhaps a bit late, but you aren't using the path64 compiler yet (which got mentioned on one of the first replies in this thread).

    Question. How do you compile apache (or anything) with a different compiler..? some steps please
    I decided not to include Path64 in this comparison since it basically is another version of Open64 (and would fit better into a version comparison. If I would have added more compilers it would probably have been more interesting with LLVM-GCC and Dragonegg). It takes quite a while to complete the test set already with the compilers I have included at this moment. I am currently trying to finish up with the SolarisStudio benchmarks for a final result of the 64-bit compilers. For 32-bit, I will most likely first focus on those compilers not available for 64-bit.

    In the meanwhile, this is the final comparison with "default" settings:
    http://global.phoronix-test-suite.co...641-4178-27177

    -O2, -O3, -Os and -Custom settings comming up as soon as they are finished (SolarisStudio left to test)

    I think this is the easier way to look at the results... The full comparison got too cluttered before.

    Leave a comment:


  • markg85
    replied
    Perhaps a bit late, but you aren't using the path64 compiler yet (which got mentioned on one of the first replies in this thread).

    Question. How do you compile apache (or anything) with a different compiler..? some steps please

    Leave a comment:


  • Jimbo
    replied
    Originally posted by staalmannen View Post
    Perhaps I need to divide the merges per optimization group...
    It seems a good idea, in the current sate it's difficult to see detailed data.

    Leave a comment:


  • staalmannen
    replied
    Originally posted by staalmannen View Post
    The final round of the CompilerDeathMatch has started.

    An intermediate update can be found here:
    http://global.phoronix-test-suite.co...63-30048-18506

    Changes:
    - Optimization for PCC (suggested by Anders Magnusson, PCC mantainer)
    - the suggested most aggressive optimizations for ICC and GCC
    - SolarisStudio on default settings

    The SolarisStudio is a late commer to the party, but will hopefully catch up soon.
    Suggestions/tips wanted for
    - highly aggressive flags for Clang
    - highly aggressive flags for SunCC
    - A way to unclutter the data. To me, it looks like a lot of the graphs now fail to show up on the webpage. Perhaps I need to divide the merges per optimization group, although this would make the overall comparison less complete.

    Leave a comment:


  • staalmannen
    replied
    Round of aggressive specific optimization flags...

    The final round of the CompilerDeathMatch has started.

    An intermediate update can be found here:
    http://global.phoronix-test-suite.co...63-30048-18506

    Changes:
    - Optimization for PCC (suggested by Anders Magnusson, PCC mantainer)
    - the suggested most aggressive optimizations for ICC and GCC
    - SolarisStudio on default settings

    The SolarisStudio is a late commer to the party, but will hopefully catch up soon.

    Leave a comment:


  • staalmannen
    replied
    Originally posted by Jimbo View Post
    Staalmannen thanks for this tests. It's interesting to see how -Os flag is perfoming pretty well on GCC and intel, in some cases even better than -O3 and -O2.
    I am happy to hear that people find it interesting

    I just uploaded compiler-specific flags for PCC, but I will not present a merge until I have added some of the most requested aggressive optimizations, primarily GCC and ICC.

    I have just seen some openbenchmarking.org variants of my data, and I must say that the ability to group data (either per compiler or per optimization option) makes the data much easier to interpret. I hope we will be able to present such graphs soon

    Ps. Thanks mtippett for your effort! Ds.

    Cheers

    Leave a comment:


  • Jimbo
    replied
    Staalmannen thanks for this tests. It's interesting to see how -Os flag is perfoming pretty well on GCC and intel, in some cases even better than -O3 and -O2.

    Leave a comment:

Working...
X