Announcement

Collapse
No announcement yet.

GCC vs. LLVM Clang On NVIDIA's Tegra K1 Quad-Core Cortex-A15

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

  • #11
    GPU tests?

    Hey Michael. All I see is CPU benchmarks. Have you published benchmarks that show the performance of the K1 GPU?

    Comment


    • #12
      Originally posted by discordian View Post
      Did I miss the compiler settings, or werent there any posted. Even if, gcc -O2 is different than clang -O2 so its rather useless comparing the same "option strings". Finding the best options for each compiler & test would be more usefull.
      And its no surprise to me that clang compares alot better iwith ARM Cpus, on x86 there are some decades of adjusting codes to the strenght and shortcomings of gcc and the complex x86 quirks. On Arm the field is alot more even and alot less quirks in the architecture.
      I have to agree with the complaint here.
      There are multiple issues of interest.

      For CODE GENERATION QUALITY, the only setting that makes sense is to run both compilers at their maximum speed settings. (-O4 if they support that, using LTO, etc). -fast-math IF the benchmarks are such that fast math makes sense. This will depend on exactly what the benchmark is doing --- obviously there is plenty of FP code that runs just fine with fast math --- and a small fraction for which fast-math is completely unacceptable.
      Running two compilers at -O2, which means different things for each compiler makes no sense.

      And if one or the other compiler crashes, or results in code that crashes/doesn't work at -Omax, that should also be pointed out, not brushed over by falling back to -O2.

      For COMPILE TIME tests, things are a little more complicated because the issue is: why do you care? Presumably the general reason you care is you want the write/compile/debug cycle to be as fast as possible. In which case, the settings should be the settings that would be used for the write/compile/debug cycle. Obviously -g, and whatever "most" people use as the optimization setting. Personally I'm happy to debug at -O2 or -O3, but there appear to be a large crowd of people who cannot handle the fact of no one-to-one mapping between each C line/variable and an identical asm instruction, and who only debug at -O0. So maybe a compromise and runs the tests at -O1?

      Comment


      • #13
        Originally posted by name99 View Post

        For COMPILE TIME tests, things are a little more complicated because the issue is: why do you care?
        Expanding on that: The compile time test is especially useless on ARM: Everybody working with ARM is going to cross-compile on a
        fast multicore x64 machine anyway!

        Comment

        Working...
        X