Announcement

Collapse
No announcement yet.

AMD's FX-8150 Bulldozer Benefits From New Compilers, Tuning

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

  • AMD's FX-8150 Bulldozer Benefits From New Compilers, Tuning

    Phoronix: AMD's FX-8150 Bulldozer Benefits From New Compilers, Tuning

    After looking at how Intel's Sandy Bridge processor performance has evolved with the new GCC 4.7 compiler and Apple's forthcoming LLVM 3.1 with Clang, here are benchmark results from the AMD FX-8150 "Bulldozer" Eight-Core processor with GCC 4.7.0 and the latest LLVM/Clang 3.1 development code along with looking at the performance impact of various compiler tuning flags for this latest-generation AMD CPU. Making things even more interesting, AMD's Open64 4.5.1 compiler was also tossed into the testing mix.

    http://www.phoronix.com/vr.php?view=17265

  • #2
    more proof that amd sucks at software

    more proof that amd sucks at software.
    its own compiler produces slower binaries than GCC. when their developers have had some part in BD from the first working chips, and still they cant make a compiler that is producing better binaries than GCC.

    Comment


    • #3
      Pentium4 also produced good numbers when the code was compiled specifically for its architecture. We all know how that ended. Maybe these days there is more interest in distributing optimized binaries?

      Comment


      • #4
        Gentoo FTW?

        Comment


        • #5
          Originally posted by bug77 View Post
          Pentium4 also produced good numbers when the code was compiled specifically for its architecture. We all know how that ended. Maybe these days there is more interest in distributing optimized binaries?
          Long ago, I envisioned OEMs re-spinning popular distributions with hardware specific optimizations. Basically, Acmetech would sign with AMD, build PCs with AMD CPUs, Chipsets, and Graphics, and then respin/recompile Ubuntu with AMD specific optimizations and patches. I think HP and Dell may have attempted something similar, but it never really took off. Ultimately, I think that the efforts required to maintain a re-spun distro only made sense for static/persistent platforms such as game consoles and appliances.

          Personally, I feel that AMD is in a unique position as a hardware manufacturer. They could release a console 'tomorrow' that would destroy the PS4 and Xbox720 when it came to performance. Looking at AMDs history, they would probably fail miserably when it came to licensing, partnering, and distribution.


          F

          Comment


          • #6
            Originally posted by russofris View Post
            Personally, I feel that AMD is in a unique position as a hardware manufacturer. They could release a console 'tomorrow' that would destroy the PS4 and Xbox720 when it came to performance.
            That would be the easy part. The hard part is enticing enough developers to build a self-sustaining ecosystem. That's almost impossible to do. M$ had to sell the entire first generation Xbox at a loss while also leveraging DirectX, just to establish a foothold in the market.

            Comment


            • #7
              Originally posted by bug77 View Post
              That would be the easy part. The hard part is enticing enough developers to build a self-sustaining ecosystem. That's almost impossible to do. M$ had to sell the entire first generation Xbox at a loss while also leveraging DirectX, just to establish a foothold in the market.
              I completely agree. However, you can even take this 1 step farther back than this - AMD's Bulldozer platform is actually very good, but its so drastically different from other x86 CPUs that nobody really feels like developing for it, and most modern software doesn't run that great on it. I like thinking of Bulldozer as a person with aspergers syndrome and savantism - the person doesn't fit in with the rest of society very well but is insanely good at one particular skill.

              Comment


              • #8
                Originally posted by schmidtbag View Post
                AMD's Bulldozer platform is actually very good, but its so drastically different from other x86 CPUs that nobody really feels like developing for it, and most modern software doesn't run that great on it.
                if you replace the word "developing" with "optimizing", I might be more inclined to agree. As we saw in the article, a lot of optimization can be gained from the compiler. AMD doesn't have to re-invent the wheel, they simply have to learn to sell cars.

                Comment


                • #9
                  Originally posted by pingufunkybeat View Post
                  Gentoo FTW?
                  This. Gentoo FTW. Frankly, Gentoo is the only reason I would consider the Bulldozer.

                  Would be neat to see something like Gentu (Ubuntu + Gentoo lol) with a spawn of portage + aptitude... binaries for all different processors (you could do binaries for all different USE flags too, theoretically, but that would just be a HUGE undertaking with some packages having 100+ USE flags that's at least 100^100 builds). I think it could be done but that just makes the repositories that much more critical etc.

                  Comment


                  • #10
                    Originally posted by schmidtbag View Post
                    I completely agree. However, you can even take this 1 step farther back than this - AMD's Bulldozer platform is actually very good, but its so drastically different from other x86 CPUs that nobody really feels like developing for it, and most modern software doesn't run that great on it. I like thinking of Bulldozer as a person with aspergers syndrome and savantism - the person doesn't fit in with the rest of society very well but is insanely good at one particular skill.
                    No, it's not very good, it's just a misfit. It is built for highly threaded workloads in an era where a dual-core can serve most desktops very well - typical workloads just don't multithread that well. And it's not drastically different than any other x86 CPUs, it's just a "let's see how many cores we can shove on that die" CPU. It may be adequate for enterprise servers, but it's not among my choices for the next upgrade.

                    Comment


                    • #11
                      Originally posted by fuzz View Post
                      This. Gentoo FTW. Frankly, Gentoo is the only reason I would consider the Bulldozer.

                      Would be neat to see something like Gentu (Ubuntu + Gentoo lol) with a spawn of portage + aptitude... binaries for all different processors (you could do binaries for all different USE flags too, theoretically, but that would just be a HUGE undertaking with some packages having 100+ USE flags that's at least 100^100 builds). I think it could be done but that just makes the repositories that much more critical etc.
                      Hardware optimizations would be enough. How many people out there actually would use USE flags if they knew and understood them? Imagine a situation where a friend comes with a new camera to share the photos. What would you with super-optimized kernel that has only drivers you need? I believe the USE flags are becoming obsolete. Nowadays we use machines which are strong enough to deal with "bloated" code. Also, the more functions are enabled in the program, the more it is prepared for unexpected situations, like the camera example above. Concluding, the software should have compiled-in all the stable functions.

                      I had dreamed about the multi-optimized distributions for years already, since my first contact with Gentoo. However, I am not skilled yet to try something on my own. After thinking about it for a long time I decided what kind of system would be most efficient. A tool would need to be created, which determines the suitable optimizations. Even better, if optimizations would be selected for each package (as in package manager) separately. Distribution would be installed from a precompiled installation media and then it would recompile itself with the aforementioned tool. All new packages would be compiled during installation with tool too. This way, the cost of package maintenance would actually lessen while the users got a faster system.

                      Comment


                      • #12
                        Originally posted by Hirager View Post
                        Hardware optimizations would be enough. How many people out there actually would use USE flags if they knew and understood them? Imagine a situation where a friend comes with a new camera to share the photos. What would you with super-optimized kernel that has only drivers you need? I believe the USE flags are becoming obsolete. Nowadays we use machines which are strong enough to deal with "bloated" code. Also, the more functions are enabled in the program, the more it is prepared for unexpected situations, like the camera example above. Concluding, the software should have compiled-in all the stable functions.

                        I had dreamed about the multi-optimized distributions for years already, since my first contact with Gentoo. However, I am not skilled yet to try something on my own. After thinking about it for a long time I decided what kind of system would be most efficient. A tool would need to be created, which determines the suitable optimizations. Even better, if optimizations would be selected for each package (as in package manager) separately. Distribution would be installed from a precompiled installation media and then it would recompile itself with the aforementioned tool. All new packages would be compiled during installation with tool too. This way, the cost of package maintenance would actually lessen while the users got a faster system.
                        I more or less agree with you -- was just saying I think different USE flags would be possible (however crazy it could get). Yeah, most modern computers can do with compiling everything into programs, especially with the introduction of SSDs for faster loading times. The option is still useful for less-powerful computers, though (but then, Gentoo will probably always be an option anyway).

                        I really do think a processor-optimized binary distribution is possible this day in age. Hell, I don't even think it would be that hard. Just needs a lot more compiling for builds on the server-end.
                        Last edited by fuzz; 04-18-2012, 03:11 PM. Reason: spelling

                        Comment


                        • #13
                          Originally posted by pingufunkybeat View Post
                          Gentoo FTW?
                          Fuck the what??

                          Comment


                          • #14
                            Originally posted by fuzz View Post
                            I more or less agree with you -- was just saying I think different USE flags would be possible (however crazy it could get). Yeah, most modern computers can do with compiling everything into programs, especially with the introduction of SSDs for faster loading times. The option is still useful for less-powerful computers, though (but then, Gentoo will probably always be an option anyway).

                            I really do think a processor-optimized binary distribution is possible this day in age. Hell, I don't even think it would be that hard. Just needs a lot more compiling for builds on the server-end.
                            Actually, there would be no need for server side compilation, if everything were built on end users machine.

                            Comment


                            • #15
                              Originally posted by fuzz View Post
                              This. Gentoo FTW. Frankly, Gentoo is the only reason I would consider the Bulldozer.

                              Would be neat to see something like Gentu (Ubuntu + Gentoo lol) with a spawn of portage + aptitude... binaries for all different processors (you could do binaries for all different USE flags too, theoretically, but that would just be a HUGE undertaking with some packages having 100+ USE flags that's at least 100^100 builds). I think it could be done but that just makes the repositories that much more critical etc.
                              OpenSUSE Build Service FTW?

                              Comment

                              Working...
                              X