Announcement

Collapse
No announcement yet.

Valve Has Been Developing A New Mesa Vulkan Shader Compiler For Radeon

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

  • #31
    This makes a significant improvement for Guild Wars 2 with D9VK; with LLVM, the shader compile is horrible (full stops for up to 1 second). With ACO, I don't notice any stuttering.

    Here is a quick Copr I threw together for Fedora 30: https://copr.fedorainfracloud.org/co...a-git-acotest/
    Last edited by Guest; 04 July 2019, 02:54 AM.

    Comment


    • #32
      This is fascinating. I can't help but be a little pessimistic about whether or not Valve will be able to keep up with new hardware coming out in reasonable timeframes, but still this is very cool to see.

      I think the main thing this is pointing out is that there are some fundamental problems with using LLVM to compile graphics code right now, and it's probably going to be really hard to fix them. LLVM was obviously designed around a different model entirely.

      I really wonder what AMD thinks of this project. Are they watching it closely to see how it works out, or are they locked 100% into LLVM and ignoring everything outside that?

      Comment


      • #33
        Originally posted by ernstp View Post
        I made a PPA for Ubuntu, please help me test it! https://launchpad.net/~ernstp/+archive/ubuntu/mesaaco
        Thanks!

        Comment


        • #34
          Originally posted by puleglot View Post
          So for SI+ GPUs we now have:
          1. AMD proprietary shader compiler used by proprietary OpenGL driver
          2. AMD proprietary shader compiler used by proprietary Vulkan driver
          3. LLVM-based compiler (modified AMDGPU backend?) used by AMDVLK
          4. LLVM-based compiler (AMDGPU backend) used by radeonsi and RADV
          5. AOC for RADV

          Not bad but not perfect. As I see when we have 5 compilers and 3 Vulkan and 2 OpenGL drivers, then there may be 5 times 5 combinations or 5 combinations per driver to be allowed. Driver may do compilation with all 5 compilers and use result first finished compilation, or do simulation of performance of all result for all application shaders at application start or installation and use best performing shader compilation with compilation time mentioned.

          Or do it even better. Load all Radeon drivers and switch them on the fly for best performance case.


          Combination of both is too optimistic or too silly for me, but maybe baby.


          Too ambitious is to use HBCC and asynchronous shaders to move most of the driver parts into compute shaders, as well.



          But these ideas are only dreams, that will not become reality, i guess.





          Comment


          • #35
            Originally posted by rabcor View Post

            Yeah I'd be lapping this up too if I actually had an amd card, but I'm a poorfag couldn't even afford the radeon vii, in fact I don't even have a desktop to put it into anymore, what is going on with my life?!
            The interesting part for me is the technology itself, even if I can afford now to get some of the latest AMD hardware, it doesn't mean I'm using it to all extend, not really a gamer, but sure I like to test stuff like this. Wish you all the best.

            Comment


            • #36
              Originally posted by rabcor View Post

              Yeah I'd be lapping this up too if I actually had an amd card, but I'm a poorfag couldn't even afford the radeon vii, in fact I don't even have a desktop to put it into anymore, what is going on with my life?!
              A RX 460 (can be flashed to a RX 560) goes for around $60 on eBay and handles 1080p pretty nicely; that's probably the lowest-end GPU I'd consider getting today though.

              Comment


              • #37
                Originally posted by Espionage724 View Post

                A RX 460 (can be flashed to a RX 560) goes for around $60 on eBay and handles 1080p pretty nicely; that's probably the lowest-end GPU I'd consider getting today though.
                That's cool I guess, but I don't have a desktop anymore, and my laptop has a 2060 in it I don't think I'd ever go below 580 to be honest, not unless I was simply incapable of saving up for something better) Actually I like the higher end cards almost exclusively these days, I want the VII, Vega or 2080-Ti ideally, everytime I buy cards I also look at performance, last time I specifically bought a GPU it was a 980-Ti, back when it was on sale when the new 1000 and rx 400 series were released. The 980-Ti was simply the best budget option available at the whooping 50% discount I got it for. And usually at the higher end, amd is simply too far behind with not enough of a price drop to make it worth considering. Reason I wanted the VII was because it was more or less on-par with the 2080 but with a shitload more memory and unlike nvidia's offerings isn't gimped when it comes to cad work. In a sense it's the perfect card for me, but when it was released I didn't have the money to burn to get it.

                And now the window has passed, I sold my desktop, got a laptop with similar specs (2060 is more or less like a 980-ti, on paper anyways, and also on paper my laptops cpu is better than what my desktop had, naturally it still all falls a little short, but only a little, worst part is the thermals, cpu running at 95°C sometimes is alarming)

                I bought it with the intent of travelling, which I am now doing, and in case I decide to settle down again at some point, it's powerful enough to substitute for a desktop until I can afford to get one. In a way, it might actually be good enough for me for 2-4 years if I stretch it. Saddest bit is that I had some issues with it on linux that forced me to switch to windows (bizarre stuff) it's particularly disappointing since I made a full switch almost a year ago and had no windows anywhere.

                Comment


                • #38
                  Originally posted by puleglot View Post
                  So for SI+ GPUs we now have:
                  1. AMD proprietary shader compiler used by proprietary OpenGL driver
                  2. AMD proprietary shader compiler used by proprietary Vulkan driver
                  3. LLVM-based compiler (modified AMDGPU backend?) used by AMDVLK
                  4. LLVM-based compiler (AMDGPU backend) used by radeonsi and RADV
                  5. AOC for RADV

                  UPD: Yes, I know that AOC is for VI+
                  You can mostly ignore 1..3, and eventually you will be able to ignore 4.

                  Comment


                  • #39
                    thanks, really good stuff then

                    Comment


                    • #40
                      Originally posted by andrei_me View Post
                      Remember Ubuntu's Drama? Steam have an official AUR ready to test ACO but no PPA at the time of writing
                      Haha, I hope Valve start putting Arch first ;-). I've been using it for years now, fantastic distro.

                      I might have to give this ACO a test, I wonder if AMD will support it going forward if it shows promise or continue on with LLVM. There are so many options with AMD now it's getting a little crazy =D.

                      Comment

                      Working...
                      X