Announcement

Collapse
No announcement yet.

AMD Sends Out Basic Zen 4 "Znver4" Enablement For The GCC Compiler

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

  • AMD Sends Out Basic Zen 4 "Znver4" Enablement For The GCC Compiler

    Phoronix: AMD Sends Out Basic Zen 4 "Znver4" Enablement For The GCC Compiler

    Following last month's introduction of the Ryzen 7000 series "Zen 4" processors, AMD has finally posted the code providing initial enablement for the Zen 4 CPUs with the GNU Compiler Collection (GCC)...

    https://www.phoronix.com/news/AMD-Ze...er4-GCC-Enable

  • #2
    znver# is a strange naming scheme. Why not zen#?

    Comment


    • #3
      You’d think they’d have this in before launch, not after…

      Comment


      • #4
        Well... Better late than never I guess.

        Comment


        • #5
          Let's hope the tuning parameters make it in, before GCC 13 is finalized. They really should try to get it done before Genoa (Epyc 7004-series) launches, so that it can make the best possible showing against Sapphire Rapids.

          I do wonder if there's a way to write a generic tool for measuring the cost table values for x86 processors. Agner Fog obviously has some tooling for taking his measurements, but I could imagine it's probably not very automated. I guess the next question would be whether he measures the right sorts of things that you could simply use his data to populate these cost tables.

          Comment


          • #6
            Originally posted by shmerl View Post
            znver# is a strange naming scheme. Why not zen#?
            The names znver1, znver2, znver3 and znver4 follow the same naming style as the previous names bdver1, bdver2, bdver3 and bdver4 (for Bulldozer version) and btver1, btver2 (for Bobcat version).

            While strange, it is at least a consistent scheme.

            Comment


            • #7
              Originally posted by shmerl View Post
              znver# is a strange naming scheme. Why not zen#?
              Try googling it.

              Comment


              • #8
                I picked up a 7950x on day 1. -march=native worked immediately with clang, picking up all the new AVX512 sets. It looks like it's picking up the stuff from /proc/cpuinfo and using that. That's not to say that it is all tuned properly or that it works for everything, but for the AVX512 stuff I tried, it worked first time.

                It makes me wonder why then doesn't gcc do the same sort of thing?

                Comment


                • #9
                  Originally posted by AdrianBc View Post

                  The names znver1, znver2, znver3 and znver4 follow the same naming style as the previous names bdver1, bdver2, bdver3 and bdver4 (for Bulldozer version) and btver1, btver2 (for Bobcat version).

                  While strange, it is at least a consistent scheme.
                  Ugly one at least. So why not rename it to a better one. Consistency of something bad isn't a benefit to get behind.

                  Comment


                  • #10
                    Originally posted by Castilllan View Post
                    I picked up a 7950x on day 1. -march=native worked immediately with clang, picking up all the new AVX512 sets. It looks like it's picking up the stuff from /proc/cpuinfo and using that.
                    Not a bad idea, at least for cases where the model number of the CPU is unrecognized.

                    Comment

                    Working...
                    X