Announcement

Collapse
No announcement yet.

Steam Play's Proton Working To Further Lower Input Latency

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

  • Steam Play's Proton Working To Further Lower Input Latency

    Phoronix: Steam Play's Proton Working To Further Lower Input Latency

    The latest updates to Valve's Proton Experimental build for Steam Play should be offering lower input latency...

    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
    Woah, I wonder if that would help the problem when framerate bounces around 40-50 which in case of VSync results in unbearable stuttering. I look forward to test it

    Comment


    • #3
      Originally posted by bple2137 View Post
      Woah, I wonder if that would help the problem when framerate bounces around 40-50 which in case of VSync results in unbearable stuttering. I look forward to test it
      Lots of applications have idiotic backbuffer config of 2 frames, fix it by forcing 3 with dxgi.numBackBuffers = 3 in dxvk.conf. Also, make sure AMDVLK isn't used, because it can't even do proper vsync on Windows (AMD doesn't care).
      Since topic is about latency: I suggest also always forcing dxgi.maxFrameLatency = 1, default CPU prerender of 3 frames of most applications is similarly idiotic.

      You can btw. combine mailbox vsync with an fps limiter, which basically behaves like fifo vsync, but with lower latency. There might be 1 frame repeated every minute or so, but that's the far better deal for real time gaming than atrocious lag that usually comes with real fifo vsync.

      Comment


      • #4
        valve shouldn't use wine as base for proton

        Comment


        • #5
          Originally posted by aufkrawall View Post
          Lots of applications have idiotic backbuffer config of 2 frames, fix it by forcing 3 with dxgi.numBackBuffers = 3 in dxvk.conf. Also, make sure AMDVLK isn't used, because it can't even do proper vsync on Windows (AMD doesn't care).
          Since topic is about latency: I suggest also always forcing dxgi.maxFrameLatency = 1, default CPU prerender of 3 frames of most applications is similarly idiotic.

          You can btw. combine mailbox vsync with an fps limiter, which basically behaves like fifo vsync, but with lower latency. There might be 1 frame repeated every minute or so, but that's the far better deal for real time gaming than atrocious lag that usually comes with real fifo vsync.
          Mailbox v-sync (a.k.a. "triple-buffering") + FPS limiter (like "libstrangle") is the way to go!

          Note that simply setting 'dxgi.numBackBuffers = 3' in dxvk.conf without said FPS limiter will make the GPU boost states unreachable after a certain amount of time, since your GPU will be working under full load all the time, so the heat output will force the firmware to throttle the operating clock frequencies.

          Comment


          • #6
            Originally posted by Aryma View Post
            valve shouldn't use wine as base for proton
            What would be the alternative?

            Comment


            • #7
              Originally posted by Linuxxx View Post
              Note that simply setting 'dxgi.numBackBuffers = 3' in dxvk.conf without said FPS limiter will make the GPU boost states unreachable after a certain amount of time, since your GPU will be working under full load all the time, so the heat output will force the firmware to throttle the operating clock frequencies.
              dxgi.numBackBuffers shouldn't have any effect without (fifo) vsync and shouldn't affect GPU load either (as long as double buffered vsync behavior doesn't meter frame rate to refresh rate divisors).

              Comment


              • #8
                Originally posted by aufkrawall View Post
                dxgi.numBackBuffers shouldn't have any effect without (fifo) vsync and shouldn't affect GPU load either (as long as double buffered vsync behavior doesn't meter frame rate to refresh rate divisors).
                Then what about this setting:

                True enables the mailbox present mode in case regular Vsync is disabled.
                This should avoid tearing, but may be unsupported on some systems
                or require setting dxgi.numBackBuffers to a higher value in order to work properly.

                False enables the relaxed fifo present mode in case regular Vsync is enabled.
                This should result in tearing but reduce stutter if FPS are too low,
                but may be unsupported on some systems.

                Please do not report issues with this option.

                Supported values: Auto, True, False

                dxgi.tearFree = Auto
                d3d9.tearFree = Auto
                My impression was that 'Auto' meant the above option would be active with 'dxgi.numBackBuffers = 3' set.

                Or do You meant the Direct3D way of triple-buffering, i.e. two consecutive back-buffers only?

                Comment


                • #9
                  Originally posted by Linuxxx View Post

                  Then what about this setting:



                  My impression was that 'Auto' meant the above option would be active with 'dxgi.numBackBuffers = 3' set.

                  Or do You meant the Direct3D way of triple-buffering, i.e. two consecutive back-buffers only?
                  DXVK's TearFree option for whatever reason't doesn't have any effect here, unlike forcing present modes via libstrangle.
                  When I force mailbox mode via libstrangle, the value of dxgi.numBackBuffers doesn't seem to matter (frame time graph is always flat, there's no tearing and fps are unlocked).

                  Comment


                  • #10
                    Just want to say that playing Ass Creed: Origins on windows and manjaro, the linux version had noticable input lag! to the point where I would only play it on windows. I'll test this branch

                    Comment

                    Working...
                    X