Announcement

Collapse
No announcement yet.

GCC 8 Hasn't Been Performing As Fast As It Should For Skylake With "-march=native"

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

  • GCC 8 Hasn't Been Performing As Fast As It Should For Skylake With "-march=native"

    Phoronix: GCC 8 Hasn't Been Performing As Fast As It Should For Skylake With "-march=native"

    It turns out that when using GCC 8 since April (or GCC 9 development code) if running on Intel Skylake (or newer architectures like the yet-to-be-out Cannonlake or Icelake) and compile your code with the "-march=native" flag for what should tune for your CPU microarchitecture's full capabilities, that hasn't entirely been the case. A fix is en route that can correct the performance by as much as 60%...

    http://www.phoronix.com/scan.php?pag...native-Skylake

  • #2
    I wonder how this affects the kernel, since you can compile that with native as well. On the subject of kernel, I'm a little surprised to see them only support up to skylake. Good thing I don't own 3 kabylake systems... oh wait.

    Comment


    • #3
      Originally posted by some_canuck View Post
      I wonder how this affects the kernel, since you can compile that with native as well. On the subject of kernel, I'm a little surprised to see them only support up to skylake. Good thing I don't own 3 kabylake systems... oh wait.
      Because Kabylake doesn't really have any major (trying to think of any offhand? Nothing comes to mind...) compared to Skylake so from the microarchitecture perspective is the same.
      Michael Larabel
      http://www.michaellarabel.com/

      Comment


      • #4
        Originally posted by some_canuck View Post
        I wonder how this affects the kernel, since you can compile that with native as well. On the subject of kernel, I'm a little surprised to see them only support up to skylake. Good thing I don't own 3 kabylake systems... oh wait.
        Kabylake is skylake CPU-wise. Only the integrated GPU and the node was updated. As such there is no kabylake arch or tune in gcc, because it would be utterly pointless. It is a skylake CPU, and so is coffelake.

        Comment


        • #5
          As much as 60% faster? It's all speculations.
          Last edited by reavertm; 07-12-2018, 07:26 PM. Reason: Unnecessary hint removed.

          Comment


          • #6
            fwiw this issue was found by the Clear Linux team using the Phoronix Test Suite ....

            Comment


            • #7
              Originally posted by arjan_intel View Post
              fwiw this issue was found by the Clear Linux team using the Phoronix Test Suite ....
              Fun to hear
              Michael Larabel
              http://www.michaellarabel.com/

              Comment


              • #8
                Ouch, that's a huge increase. I was thinking of compiling kernel for my laptop, will try that now and see how it works......

                Comment


                • #9
                  Yeah I noticed this when I was testing Nginx HTTP/2 HTTPS benchmarks when Nginx compiled with GCC 7.3.1 vs GCC 8.1.1 on CentOS 7.5 64bit with Intel Xeon Scalable Skylake server. GCC 7.3.1 was better than GCC 8.1.1 consistently. Looking forward to the patch fixes !

                  Comment


                  • #10
                    Originally posted by Michael View Post

                    Because Kabylake doesn't really have any major (trying to think of any offhand? Nothing comes to mind...) compared to Skylake so from the microarchitecture perspective is the same.
                    What about Kabylake-R (that's in my laptop)? Is that also very similar to Skylake or does it have more differences?

                    Comment

                    Working...
                    X