Announcement

Collapse
No announcement yet.

Gallium Nine Is Working On NIR Support So It Can Be Used With Intel Iris, Zink Vulkan

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

  • #11
    Back when I used to follow Gallium progress years ago, most of the effort appeared to be translating the various different IRs back and forth. It's a bit disappointing to see that this is still necessary, surely this is a massive time sink of developer effort and wouldn't be optimal in performance with all that translation going on. Why doesn't Gallium have a standardised IR if both the drivers and state trackers need to talk in the same IR? It's effectively part of the API.

    Comment


    • #12
      - Nine might also work out then with other NIR-focused Gallium3D drivers like Freedreno and Broadcom VC4/V3D. Though the performance may be another story, at least this Direct3D 9 support might work on these other Gallium3D drivers.
      Why would anyone want to do that? Or is this just saying that theoretically it could work for the sake of working?

      Comment


      • #13
        Originally posted by gigaplex View Post
        Back when I used to follow Gallium progress years ago, most of the effort appeared to be translating the various different IRs back and forth. It's a bit disappointing to see that this is still necessary, surely this is a massive time sink of developer effort and wouldn't be optimal in performance with all that translation going on. Why doesn't Gallium have a standardised IR if both the drivers and state trackers need to talk in the same IR? It's effectively part of the API.
        Gallium had a standardized IR - TGSI.

        Driver developers didn't like it, so they added support for a new one (NIR).

        It's going to be a long slog to get rid of tgsi at this point, because you'd have to make massive updates to old drivers that no one wants to touch anymore, but for all intents and purposes NIR is pretty much the modern standard for any new drivers.

        Comment


        • #14
          Originally posted by smitty3268 View Post

          Gallium had a standardized IR - TGSI.

          Driver developers didn't like it, so they added support for a new one (NIR).

          It's going to be a long slog to get rid of tgsi at this point, because you'd have to make massive updates to old drivers that no one wants to touch anymore, but for all intents and purposes NIR is pretty much the modern standard for any new drivers.
          Yes, NIR in RadeonSI is pretty stable, at least all my tested games had no issues so far. But I don't know what is the development status NIR in RadeonSI. Hope it is still an ongoing effort to switch, at least it makes a lot of sense to me, NIR is used by RADV and then by RadeonSI, Gallium Nine and Zink as well.

          Comment


          • #15
            Originally posted by R41N3R View Post

            Yes, NIR in RadeonSI is pretty stable, at least all my tested games had no issues so far. But I don't know what is the development status NIR in RadeonSI. Hope it is still an ongoing effort to switch, at least it makes a lot of sense to me, NIR is used by RADV and then by RadeonSI, Gallium Nine and Zink as well.
            AFAIK, the radeonsi devs have agreed that NIR support is the best/easiest way of getting GL 4.6 support, so the switch to NIR will happen in order to bump up to the latest GL version sooner or later.

            To date, it hasn't seemed to be much of a priority, given that the NIR 4.6 support isn't ready yet anyway, but maybe that starts changing soon now that it's almost done.

            I know they still need to add bindless support to avoid regressions while switching as well.

            Comment


            • #16
              Originally posted by Venemo View Post
              Iris and Zink are (will be) Gallium drivers.
              What we plan to do is make it possible for Iris and Zink to use the shaders produced by Nine, by translating Nine's TGSI output into NIR.
              I must ask, would something like using Gallium Nine -> Zink -> proprietary Nvidia drivers be possible? Can the Gallium Nine standalone be extended with Zink so you get Vulkan output, which could be handled by the Nvidia drivers? The performance in such a case should still be reasonably good (at least way better than wined3d), right?

              It would be cool to enable the usage of Gallium Nine on top of the driver stack that the majority of Nvidia users use for gaming.
              Originally posted by Venemo View Post

              Why Starcraft 2 and Witcher 1-2? Because those are the D3D9 games that we happen to have on our computers. Others may or may not work. Once we fix all the kinks that we found so far, it will make sense to do some sort of testing with more games
              Please add Guild Wars 2 to that list, it's one of the most-played D3D9 games today and it's in dire need of something better than the current wined3d.
              You can create f2p accounts, so you can test it for free.

              Comment


              • #17
                Originally posted by Degra View Post
                I must ask, would something like using Gallium Nine -> Zink -> proprietary Nvidia drivers be possible? Can the Gallium Nine standalone be extended with Zink so you get Vulkan output, which could be handled by the Nvidia drivers? The performance in such a case should still be reasonably good (at least way better than wined3d), right?

                It would be cool to enable the usage of Gallium Nine on top of the driver stack that the majority of Nvidia users use for gaming.
                Theoretically possible, but zink is not there yet, and still has a long way to go before this can happen. But yes, this is one of the long-term goals.

                Originally posted by Degra View Post
                Please add Guild Wars 2 to that list, it's one of the most-played D3D9 games today and it's in dire need of something better than the current wined3d.
                You can create f2p accounts, so you can test it for free.
                Once nine+nir works reasonably well for the test cases that we have, I'll look into testing with more games. But right now, if you're using AMD hardware you can use current nine for huge perf gains against wined3d without needing NIR, and if you're using Intel you will have to wait for Iris to get merged (and then you'll need the NIR work). On iris there are still quite a few bugs and missing features though (causing glitches in all games we tested so far), so it doesn't yet make sense to expect it to work perfectly for your game either.

                Comment

                Working...
                X