Announcement

Collapse
No announcement yet.

Geometry Shader Support For RadeonSI's NIR Back-End

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

  • Geometry Shader Support For RadeonSI's NIR Back-End

    Phoronix: Geometry Shader Support For RadeonSI's NIR Back-End

    AMD this year has been developing a NIR back-end for the RadeonSI Gallium3D driver in part for supporting the ARB_gl_spirv extension in being able to re-use/share some code with the RADV Vulkan driver that obviously already deals with SPIR-V and relies on NIR for its intermediate representation. Now support for geometry shaders is coming to RadeonSI NIR...

    http://www.phoronix.com/scan.php?pag...ometry-Shaders

  • #2
    Will the performance improve by changing TGSI for NIR?

    Comment


    • #3
      Originally posted by vickop View Post
      Will the performance improve by changing TGSI for NIR?
      probably yes but not by much

      Comment


      • #4
        Probably no, actually; most likely it'll differ on a case-by-case basis. More important is that NIR makes other new features easier to support, including 16-bit types and SPIR-V.

        Comment


        • #5
          Originally posted by nhaehnle View Post
          Probably no, actually; most likely it'll differ on a case-by-case basis. More important is that NIR makes other new features easier to support, including 16-bit types and SPIR-V.
          Is it easier because of the way NIR is, or because it's already done for it in Mesa unlike TGSI?

          Comment


          • #6
            Originally posted by nhaehnle View Post
            Probably no, actually; most likely it'll differ on a case-by-case basis. More important is that NIR makes other new features easier to support, including 16-bit types and SPIR-V.
            How you can replace TGSI for Gallium driver? I think it will not be Gallium.

            Comment


            • #7
              Originally posted by stalkerg View Post

              How you can replace TGSI for Gallium driver? I think it will not be Gallium.
              Sounds like you don't know what Gallium actually is, then.

              Comment


              • #8
                You could probably argue that both ways.

                IIRC three different ideas were proposed around 2007 (Gallium3D, TGSI, use of LLVM in shader compilers) with the intention that they be used together, and initially there was probably an explicit assumption that shaders passed to a Gallium3D driver would be in TGSI since there was no way to specify a different format.

                That said, non-TGSI shaders have been feeding into Gallium3D drivers for at least 6 years (we passed LLVM IR into the r600 and radeonsi drivers to support CLover) and I expect other drivers also have done that in the past.

                Comment


                • #9
                  Originally posted by stalkerg View Post

                  How you can replace TGSI for Gallium driver? I think it will not be Gallium.
                  As far as I'm versed in terms Gallium is an API which covers drivers and state trackers in a pluggable manner, whilst TGSI is an intermediate shader presentation. They're orthogonal.

                  Comment


                  • #10
                    Originally posted by smitty3268 View Post

                    Sounds like you don't know what Gallium actually is, then.
                    Do you? I'd certainly love a link some documentation. Last time I looked for that (3 years ago or something) I only ended up on some Chinese websites where those parts that were in English never went into any kind of detail …

                    Comment

                    Working...
                    X