No announcement yet.

GCC 8/9 vs. LLVM Clang 7/8 Compiler Performance On AArch64

  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by thesandbender View Post
    .. x86 MMX is not IEEE754 compliant ..
    It would be a miracle if it was -- it's integer-only.

    Originally posted by thesandbender View Post
    It depends on your definition of significant. fast-math allows gcc to reorder math operations. So (a * c) + (b * c) -> (a + b) * c. That is mathematically correct. However, because of rounding inherent to base 2 it can produce different results if fast-math is turn on or off.
    Nothing to do with base-2. Floats are non-associative in any base you could think of, and thus distributive law would have difficulties working either. What -ffast-math (or its equivalent for non-gcc-like compilers) does is it pretends floats are associative and always finite numbers. Masking error conditions is just icing on the cake.

    On the subject of benchmarking compilers -- campbell is right, Michael needs to start taking into account what the original code authors wrote.