No announcement yet.

GCC vs. LLVM Clang vs. AOCC Compilers On AMD Threadripper

  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    I have always liked Clang since the very early days when nobody had even really heard of it... And even I can't help but snicker at the timed compilation benchmarks. One of its very purposes was to compile much faster and we see (in, for example, the PHP compilation benchmark) GCC is somehow faster at that now.

    Nice to see competition driving both compiler projects to best the other.


    • #12
      Originally posted by tildearrow View Post
      Possible typo:
      No, it's a compiler for the C Language, so it's right.


      • #13
        Originally posted by Meteorhead View Post
        I too think that the results seem very unimpressive. It looks to me that the effort put into AOCC up until now would've been more useful placed elsewhere. GCC and Clang seem to be doing fine. If there is compiler dev FTE to spare, it should be put into mainline SPIR-V back-end for LLVM. That would have far greater use to AMD as well.
        AOCC is a fork for AMD to develop upon just like any other open source fork. The good stuff will eventually make it to LLVM base.

        Frankly you sound a bit whinney here, consider what life was like back in the days of the original Mac or the early DOS machines. Compilers back then universally sucked often producing cra or completely wrong code. These days we have two very high quality compilers to choose from. Probably a lot more than two is you count the non C language solutions. For an old guy that is a very good thing.


        • #14
          Originally posted by nslay View Post

          Nice to see competition driving both compiler projects to best the other.
          Isnt that wonderful? Development of GCC was terribly slow before LLVM started to take off. Now we have two excellent C language compilers, frankly light years ahead of what we had 10-20 years ago.

          As for CLang getting slow, maybe but i do know GCC has improved in that respect. Most people though started using CLang for vastly improved diagnostics. It woukd be interesting to see compiler speeds on heavily templated code as that seems to kill both compilers.


          • #15
            AOCC benchmarks but what we see is that GCC not only generates faster binaries, it also compiles faster
            Clang's unusually slow compilation times might be because of the "znver1" optimizations - we usually see in benchmarks the most generic flags.


            • #16
              I find the FLAC encode results interesting and tried looking at the binaries, and the GCC version are much stronger optimized than the clang version. One thing I notice was that FLAC adds the flag -funroll-loops to the optimization flags, which clang ignores in this case, but GCC respects. I think the FLAC encode might actually be faster if you remove -funroll-loops, or override it with -fno-unroll-loops. It just might be making the inner loop to big to fit in the internal microcode looper.