Announcement

Collapse
No announcement yet.

The State of Compute Shaders For Gallium3D Drivers

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

  • The State of Compute Shaders For Gallium3D Drivers

    Phoronix: The State of Compute Shaders For Gallium3D Drivers

    Since last month Intel has offered compute shader support via their open-source Linux graphics driver. The ARB_compute_shader support is needed for OpenGL 4.3 but so far Intel is the only Mesa/Gallium3D driver having support for this important extension...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    It's actually Samuel Pitoiset (hakzsam) working on compute, not me. You can see the latest results of his work at http://cgit.freedesktop.org/~hakzsam...pute_shader_v2 -- he's been able to make great progress in a short period of time. I've just been providing a bit of advice here and there, and have been using this branch to run dEQP GLES 3.1 tests (since those largely require compute).

    For now we're mostly focused on Fermi since that happens to be the GPU both of us have plugged in. However it will at least be extended to Kepler1 before being upstreamed. (Kepler1 = GK10x, while Kepler2 = GK110/GK20x).

    Comment


    • #3
      "That said, it's not particularly useful until shader buffer and image support is implemented"
      I clearly recall developers stating image support was useless, despite trying to prove the contrary. What happened? Is the world upside-down?
      ## VGA ##
      AMD: X1950XTX, HD3870, HD5870
      Intel: GMA45, HD3000 (Core i5 2500K)

      Comment


      • #4
        Thing is, Image Load/Store and SSBOs are (I think) the only way to access any data from the 'outside world' inside a compute shader, or at least the only ones to provide useful atomic operations. You simply can't write any useful compute shader without it.

        Comment


        • #5
          In addition I believe there is at least one recently released Linux game which requires them (I think there are two but not sure) so it will help there as well.
          I believe there is more. I remember Shadows of Mordor, need OpenGL 4.3.

          Edit: Alien Isolation too.
          Last edited by M@GOid; 19 January 2016, 09:58 AM.

          Comment


          • #6
            Feral is also porting Xcon 2 and Batman: Arkham Knight. The bat game is guaranteed to need OpenGL 4.3. Also, Star Citizen is waiting Crytek finish the CryEngine port to OpenGL to launch a Linux version, so you can bet it will need the last OpenGL available.

            So the list of games needing the last version of OpenGL will only grow. The faster we got it in the OSS driver, the better.

            Comment


            • #7
              Due to all the shite that happened with the batman game I honestly doubt it's coming. For those that haven't heard it launched on PC in such a state that it was removed from the store for a number of months. Even now that it has returned it still plays like shit on Windows so I don't see how it'll be any use porting it to platforms with a low market share when it did as badly as it did on the majority PC gaming OS

              Comment


              • #8
                generally once the first driver has a feature working the other drivers pick it up fairly quickly afterwards.

                Except for atomic_counters and image_load_store... Are they really so hard to implement? The later, maybe, but the former...

                Comment


                • #9
                  Originally posted by rastersoft View Post
                  Except for atomic_counters and image_load_store... Are they really so hard to implement? The later, maybe, but the former...
                  Does this answer your question?

                  Comment


                  • #10
                    Come on, robustness! That seems to be the main thing holding back 4.3 right now.

                    And Unreal Engine 4 makes use of GL 4.3. It doesn't require it (yet), but it has a runtime option to use GL4, and that actually means GL 4.3.

                    Comment

                    Working...
                    X