Announcement

Collapse
No announcement yet.

Mesa 24.3 Merges Vulkan FIFO Support On Wayland

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

  • Mesa 24.3 Merges Vulkan FIFO Support On Wayland

    Phoronix: Mesa 24.3 Merges Vulkan FIFO Support On Wayland

    Yet another feature merging into Mesa 24.3 with the code branching (feature freeze) yet to take place is Vulkan FIFO presentation mode support under Wayland...

    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
    What are the benefits? It looks it's simpler and maybe affects latency, but it's just a guess. Why wasn't it used in the first place? Article doesn't explain a thing.

    Comment


    • #3
      As minimum for games and for regular desktop usage I cannot imagine when FIFO is desired if there is mailbox. But I’m curious. In theory I cannot imagine think about something related to video rendering when you have no right to lose the frames, but then you can render offscreen to textures.

      Comment


      • #4
        Originally posted by Volta View Post
        What are the benefits? It looks it's simpler and maybe affects latency, but it's just a guess. Why wasn't it used in the first place? Article doesn't explain a thing.
        SDL wanted this before they enabled Wayland as default.

        Originally posted by a valve dev
        "Wayland has a myriad of unresolved problems regarding surface suspension blocking presentation and the FIFO (vsync) implementation being fundamentally broken leading to reduced GPU-bound performance.

        That is not to say "we should fix FIFO in Mesa/other drivers," but rather that it is completely unfixable without an additional protocol, in this case fifo-v1.

        Without this protocol, vkQueuePresent or glSwapBuffers must stall for the 'frame' callback after presenting an image. The only reason we can get away with this on SteamOS is because Gamescope implements what is essentially fifo-v1 and we use that there.

        The other side is surface suspension -- a very similar issue to the above wrt the frame callback being used in that way and blocking. If the SDL window is obscured, vkQueuePresent will block in FIFO, which games typically do NOT like. This is solved by the combination of fifo-v1 and commit-timing-v1.

        Comment

        Working...
        X