Announcement

Collapse
No announcement yet.

Intel Adds AVX2/FMA Optimized Math Functions To Glibc 2.27

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

  • #11
    Originally posted by davidbepo View Post

    yes as it has both fma and avx2,
    i suspect it will be a smaller improvement because zen's avx implementation is weaker
    I think the timing of this is fairly suspicious. AVX2 has been available since Haswell. Now Zen has landed and ThreadRipper is competing with Skylake-X in the lucrative HEDT market, intel suddenly decides to contribute code to glibc that boosts AVX2, with it being well-documented that this is one of the weaker spots on zenver1? Yeah, totally a coincidence...

    Comment


    • #12
      Originally posted by PuckPoltergeist View Post
      Additionally, we're speaking about special math functions. Only few programs will take benefit from this, and there are already special libraries for this, with highly optimized code.

      I'd like to disagree. Sure, scientific software uses specialised libraries for all its fancy maths needs. However, most software only needs some simple math. Almost everything on your typical Linux desktop system links against libm (often to get exactly these functions). We are talking about optimisations of the basic trigonometry functions (sin/cos, etc) here. These functions from the C standard library are used in many things, notably GUI toolkits, graphics libraries, games, codecs, pretty much anything graphics/multimedia related, etc ... I am sure it will make a difference in quite a few benchmarks.

      Comment


      • #13
        Originally posted by ermo View Post

        I think the timing of this is fairly suspicious. AVX2 has been available since Haswell. Now Zen has landed and ThreadRipper is competing with Skylake-X in the lucrative HEDT market, intel suddenly decides to contribute code to glibc that boosts AVX2, with it being well-documented that this is one of the weaker spots on zenver1? Yeah, totally a coincidence...
        Hey, an improvement is an improvement. Even if it benefits Intel more than AMD, both will likely benefit. Unlike the ICC controversy, this does not seem to be something that actually harms/boycotts AMD. Just sounds like some good competition from AMD motivated Intel to contribute some improvements, whereas before nobody bothered. This is a good thing for everybody. As a company, of course they are going to focus on things that benefit their products the most. Nothing wrong with it, as long as they are not intentionally sabotaging AMD like they did with ICC. Yes, AVX2 has existed since Haswell, but better late than never. Lots of software is continuously updated all the time to make better use of the capabilities of newer processors. If AMD CPUs are inferior to Intel's for these instructions/workloads, then ... well ... AMD should work on improving their CPUs.

        Comment


        • #14
          Originally posted by ermo View Post

          I think the timing of this is fairly suspicious. AVX2 has been available since Haswell. Now Zen has landed and ThreadRipper is competing with Skylake-X in the lucrative HEDT market, intel suddenly decides to contribute code to glibc that boosts AVX2, with it being well-documented that this is one of the weaker spots on zenver1? Yeah, totally a coincidence...
          actually I was bored last weekend and saw these show up in profiles.... so I poked and optimized and stuck there result in Clear Linux.
          (well half of them was a few more weeks ago)
          HJ then made the code more pretty and upstreamed it into glibc.

          I and others have been working on such optimizations via Clear Linux for over two years now (since the start of CL) well before Zen was known


          Comment


          • #15
            Originally posted by ermo View Post

            I think the timing of this is fairly suspicious.
            Nothing suspicous about it, the patches are open source, everbody can read them and test them. If you think they put ryzen at a disadvantage you can go ahead and submit alternatives to glibc...

            Comment


            • #16
              Originally posted by ermo View Post

              I think the timing of this is fairly suspicious. AVX2 has been available since Haswell. Now Zen has landed and ThreadRipper is competing with Skylake-X in the lucrative HEDT market, intel suddenly decides to contribute code to glibc that boosts AVX2, with it being well-documented that this is one of the weaker spots on zenver1? Yeah, totally a coincidence...
              As other have pointed out the use of fused multiply adds isn't a huge factor in glibc. There are special libraries that have used this facility for years. I don't see this as having a massive impact and as such. don't really get the conspiracy theories we have here. However if you are so worried, compile a suit of apps using glibc, one set targeting Intel and another targeting AMD so that we can see just what the differences are. I honestly don't believe there is much to worry about in the apps most of us use.

              Comment


              • #17
                Originally posted by tajjada View Post

                Hey, an improvement is an improvement. Even if it benefits Intel more than AMD, both will likely benefit. Unlike the ICC controversy, this does not seem to be something that actually harms/boycotts AMD. Just sounds like some good competition from AMD motivated Intel to contribute some improvements, whereas before nobody bothered. This is a good thing for everybody. As a company, of course they are going to focus on things that benefit their products the most. Nothing wrong with it, as long as they are not intentionally sabotaging AMD like they did with ICC. Yes, AVX2 has existed since Haswell, but better late than never. Lots of software is continuously updated all the time to make better use of the capabilities of newer processors. If AMD CPUs are inferior to Intel's for these instructions/workloads, then ... well ... AMD should work on improving their CPUs.
                so true

                Comment


                • #18
                  Originally posted by tajjada View Post


                  I'd like to disagree. Sure, scientific software uses specialised libraries for all its fancy maths needs. However, most software only needs some simple math. Almost everything on your typical Linux desktop system links against libm (often to get exactly these functions). We are talking about optimisations of the basic trigonometry functions (sin/cos, etc) here. These functions from the C standard library are used in many things, notably GUI toolkits, graphics libraries, games, codecs, pretty much anything graphics/multimedia related, etc ... I am sure it will make a difference in quite a few benchmarks.
                  Well to disagree again, many general purpose apps simply are not heavy users of libm, often very demanding apps bypass libm to use optimized libraries and if demands are really intense they often defer to the GPU which is its own programming fiefdom. I'm not saying that optimizations won't help glibc just that it likely isn't going to have a big impact for most users. Most here being general purpose desktop users.

                  In other words this is a good thing but lets not get too excited about having mini Crays on our desk. The reference to Crays is a bit funny in that with the right section of components these days you can have the equivalent of many Crays on your desk, but that is another thread.

                  Comment


                  • #19
                    Originally posted by arjan_intel View Post

                    actually I was bored last weekend and saw these show up in profiles.... so I poked and optimized and stuck there result in Clear Linux.
                    (well half of them was a few more weeks ago)
                    HJ then made the code more pretty and upstreamed it into glibc.

                    I and others have been working on such optimizations via Clear Linux for over two years now (since the start of CL) well before Zen was known

                    Well, regardless of fans of any sides tyvm for your contribution any improvement is always welcome

                    Comment


                    • #20
                      Originally posted by wizard69 View Post
                      In other words this is a good thing but lets not get too excited about having mini Crays on our desk. The reference to Crays is a bit funny in that with the right section of components these days you can have the equivalent of many Crays on your desk, but that is another thread.
                      This makes no sense without referencing the specific Cray model(s) you had in mind. And they would have to be very old Crays indeed, from many years ago. The latest Cray supercomputers all use the top-tier Xeon chips and Nvidia Tesla GPU's, hundreds or thousands of each, delivering hundreds of Petaflops, so certainly you won't be fitting those on your desk any time soon.
                      Last edited by torsionbar28; 19 August 2017, 10:51 PM.

                      Comment

                      Working...
                      X