Announcement

Collapse
No announcement yet.

LLVM/Clang 3.2 Compiler Competing With GCC

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

  • #16
    Originally posted by elanthis View Post
    GCC had major competition, what are you talking about?
    Open source competition?

    Originally posted by elanthis View Post
    It's still the unpopular choice in a number of important fields where other compilers are dominant.
    What are these in particular?

    Comment


    • #17
      Originally posted by johnc View Post
      Does anyone know how the two compare on ARM processors? This seems to be an area where the two compete head-to-head.
      Yes this is an area which I'm also interested in, in x86 64 which I am benchmarking GCC still holds supreme in terms of code performance, however I have no idea of how these compilers compare on ARM.

      And given that this is an extremely strong architecture outside of the desktop it would be very interesting to see which compiler toolchain has the best performance here.

      Comment


      • #18
        Originally posted by Ericg View Post
        A) Just supporting LLVM doesn't make someone an "apple fanboy" so go and take your apparent GCC-fanboyism somewhere else.
        There's also the license issue, some OSes are stuck with a relatively outdated version of GCC. They are about to move to clang.

        Originally posted by Ericg View Post
        B) "Hands down" is a BIG stretch. LLVM was extremely competitive in just about every test that doesn't require OpenMP, and once OpenMP IS sorted out I bet those benchmarks will show LLVM is about the same as GCC in those tests as well.
        Some time ago Michael Larabel published a small article about LLVM's Polly: http://www.phoronix.com/scan.php?pag...tem&px=MTIwMzg. How advanced is this project, is it possible to perform these benchmarks with this polyhedral optimizer?

        Originally posted by Ericg View Post
        C) The benefits in LLVM aren't in speed. 1) Modularity-- something GCC cant accomplish without scrapping a large chunk of the codebase SPECIFICALLY because GNU WANTED a monolithic codebase so that companies couldn't pull in select portions of gcc and just use those. 2) Cleaner code base. 3) Competition finally amongst compilers finally. GCC has gone uncontested in the open source world for a very long time, its good to see a project finally giving it a run for its money and ensuring that they don't start to rest on their laurels
        There's another open source competitor, Open64. I hope this will bring some movement into the compiler scene and probably one of the contestant will outperform GCC.

        Regards,
        Gilles

        Comment


        • #19
          Originally posted by Ericg View Post
          A) Just supporting LLVM doesn't make someone an "apple fanboy" so go and take your apparent GCC-fanboyism somewhere else.
          There's also the license issue, some OSes are stuck with a relatively outdated version of GCC. They are about to move to clang.

          Originally posted by Ericg View Post
          B) "Hands down" is a BIG stretch. LLVM was extremely competitive in just about every test that doesn't require OpenMP, and once OpenMP IS sorted out I bet those benchmarks will show LLVM is about the same as GCC in those tests as well.
          Some time ago Michael Larabel published a small article about LLVM's Polly: http://www.phoronix.com/scan.php?pag...tem&px=MTIwMzg. How advanced is this project, is it possible to perform these benchmarks with this polyhedral optimizer?

          Originally posted by Ericg View Post
          C) The benefits in LLVM aren't in speed. 1) Modularity-- something GCC cant accomplish without scrapping a large chunk of the codebase SPECIFICALLY because GNU WANTED a monolithic codebase so that companies couldn't pull in select portions of gcc and just use those. 2) Cleaner code base. 3) Competition finally amongst compilers finally. GCC has gone uncontested in the open source world for a very long time, its good to see a project finally giving it a run for its money and ensuring that they don't start to rest on their laurels
          There's another open source competitor, Open64. I hope this will bring some movement into the compiler scene and probably one of the contestant will outperform GCC.

          Regards,
          Gilles

          Comment


          • #20
            These benchmarks are as useful as looking at the sky to know if it's gonna rain during the day ... they lack so much information !!
            for example, I couldn't manage to find which switches were used on each compiler and test, if inline assembly was disabled or not, blabla.

            Well, I'm glad that Clang "does good" in this kind of gross measure; But this benchmark it's not my coup of tea: I would prefer something which I can draw more meaningful conclusions from

            Comment


            • #21
              Matrix Operations

              It looks like LLVM/Clang mostly wins in SciMark, and these seem to be mostly matrix multiplications.

              Sparse Matrix, Dense Matrix, Matrix Factorization, Jacobi *Matrix* Over-Relaxation.

              Also there’s the Monte Carlo test, which might be implemented with Matrizes, too (I just wanted to check but could not find the sources).

              So all these tests essentially evaluate the performance of matrix operations. And there I would ask: Which library?

              When I installed scipy on our cluster (KIT HC3), it selected the best library among a number of libraries by actually compiling test code and doing runtime performance tests, because the libraries differ between platforms. Have a look at ATLAS ( http://math-atlas.sourceforge.net/ ) for some background.

              The only other test where LLVM wins against GCC is Tachyon - and that likely uses matrix operations, too (because most 3D stuff can be represented by matrizes).

              For all other tests LLVM loses. So the high number of Matrix tests skews the perception by placing a big focus on one feature.

              Comment

              Working...
              X