No announcement yet.

Enabling AMD Radeon FreeSync On Linux 5.0

  • Filter
  • Time
  • Show
Clear All
new posts

  • #51
    Hello I am currently using Pop!_OS(Ubuntu Based), on kernel 5.0 and mesa 19 with an amd Vega 56 as my gpu. I cannot get the VariableRefresh rate to work at all, not even error. I have set the conf settings in /usr/share/X11/xorg.conf.d/10-amdgpu.conf and /usr/share/X11/xorg.conf.d/10-amdgpu.conf to the values in this article and have restarted multiple times in hoping it would start logging. For some reason the "DRI 3" option is working and loading fine but it is not loading VariableRefresh. If anyone can help me get in the right direction to get this working i would appreciate it.

    screenshot of my current settings:


    • #52
      Originally posted by debianxfce View Post
      The first image uses old drivers and do not have freesync support. Do not touch 10-amdgpu.conf. DRI3 is enabled by default. Use on instead of true. Use Oibaf ppa cosmic version, it has the updated xserver-xorg-video-amdgpu package and llvm 8.
      [email protected]:~$ cat /usr/share/X11/xorg.conf.d/10-freesync.conf
      Section "Device"
      Identifier "AMDgpu"
      Driver "amdgpu"
      Option "VariableRefresh" "on"
      [email protected]:~$ cat /usr/share/X11/xorg.conf.d/10-amdgpu.conf
      Section "OutputClass"
      Identifier "AMDgpu"
      MatchDriver "amdgpu"
      Driver "amdgpu"
      Here is my custom AMD wip kernel repo with latest lfc fixes.
      fetch-url /target/etc/apt/trusted.gpg.d/packagecloud.asc
      in-target add-apt-repository -y "deb buster main"
      Ok so i just found out Pop OS' Mesa always supersedes whatever you installed so i added the following to /etc/apt/preferences.d/pop-default-settings:

      Package: *
      Pin: release o=LP-PPA-oibaf-graphics-drivers
      Pin-Priority: 1002

      Which is now showing the correct version version of 19.1 but my llvm is still 7.0 and i am still not seeing VariableRefresh in the logs after modifying the two files specified above. This is the PPA i am using Is this the correct one? I also tried the Padoka Stable PPA but i kept getting an error saying the ppa had no release file.


      • #53
        Meant to add this screenshot.


        • #54
          Originally posted by debianxfce View Post
          Use Synaptic, there you have Settings/Preferences/Distribution/Always prefer the highest version.

          It is correct one. Game fps must be in the monitor freesync range to activate it. Not all games active freesync. Free games that works with freesync:
          - Euro Truck Simulator 2 Demo
          - Project: Gordon Demo
          - War Thunder

          Check with Synaptic that you are using the xserver-xorg-video-amdgpu package from Oibaf ppa.
          Nobody knows what tweaks the Pop Linux has so it is better to use my distribution that has latest amdgpu drivers and freesync activated out of box.
          It is working now. Thank you so much for your help!


          • #55
            According to this thread:

            It is not straightforward to get 120hz+ across the Linux desktop experience. Is there an easy WM + config + hardware setup that would allow 144hz across everything consistently (terminal, web browser, windows manager, etc)? It would be nice to know!

            The solution in that thread seemed to be using KDE, which I'd prefer not to use.


            • #56
              Originally posted by Khrundel View Post
              Due to matrices overdrive each monitor must have input lag at least for 1 frame period. Most have more than one, especially TVs withtout game mode activated. Up to 50ms for nongaming displays. So, even with best monitor you will see 1 frame after videocard passed it to the monitor. 10-15 milliseconds. But, before it will pass frame videocard have to render it. With 60 fps, rendering takes about 15 ms. So, you will see frame 30ms after videocard have started to render it. But before videocard will start to render it, gpu driver have to pass command buffer to it and command buffer may contain several frames (up to 3 with direct3d), so it is safe to assume opengl/vulkan usermode driver have to process rendering commands 50-60ms before you will see frame. Modern cpu-bound rendering engines must feed commands to opengl and it takes even more time, lets assume 3-5 ms. And before starting to render game should compute world change, usually it recomputes 1/60 seconds, so another 15ms. 70-80ms. And, at last, you have to add lag of mouse and lag of OS input processing. So, you see image moving at least 100 milliseconds after you've moved the mouse. Additional 3.5-7ms of 144hz vsync lag will surely ruin everything.
              Text about fps jumping is same garbage. All these jumps with 120+ monitors are far beyond human ability to notice.
              The commenters suggesting others to be held back due to their own limits of perception always irk me. Even if you can paint a logical description of why we'd not be able to perceive in some theoretical case - it is very clear that people can perceive - especially versus near-zero latency like CRTs.


              • #57
                Originally posted by theriddick View Post
                Freesync not only injects frames or prevents tearing, it smooths out apparent on screen performance, syncing frames better. If you have a game where fps jumps around like a mad squirrel (many) then it certainly is beneficial.

                Sadly Linux isn't up to windows level of VRR support, not going to take a interest in it under Linux until someone fixes it up.
                This seems to mean that display smoothness is superior on a "Looking Glass / GPU passthrough + Windows guest" than its own Linux host, yes?


                • #58
                  $2000 bounty may be of interest for Linux @ 144hz+


                  • #59
                    Are you able to use FreeSync on one display running a fullscreen game while having a second screen attached showing the Desktop/Applications?