Announcement

Collapse
No announcement yet.

AMD's "AMDVLK" Vulkan Driver Making It Easier To Switch To RADV Driver

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

  • AMD's "AMDVLK" Vulkan Driver Making It Easier To Switch To RADV Driver

    Phoronix: AMD's "AMDVLK" Vulkan Driver Making It Easier To Switch To RADV Driver

    AMD has begun staging their new open-source driver code ahead of the next AMDVLK driver release that will likely occur this week or next. With this latest AMDVLK code dump, there is easy run-time switching support between the AMDVLK and RADV Vulkan drivers...

    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
    for Navi 2 (RNDA 2)
    Small typo on RDNA 2

    So just to confirm, when the binaries get released, I can install those and then set the environment variable AMD_VULKAN_ICD=RADV system-wide for normal default use, then when I want to switch to AMDVLK for a particular app/game I can just do AMD_VULKAN_ICD=AMDVLK ./game, is that correct?

    Comment


    • #3
      Originally posted by perpetually high View Post

      Small typo on RDNA 2

      So just to confirm, when the binaries get released, I can install those and then set the environment variable AMD_VULKAN_ICD=RADV system-wide for normal default use, then when I want to switch to AMDVLK for a particular app/game I can just do AMD_VULKAN_ICD=AMDVLK ./game, is that correct?
      Yes, that's correct. But you can already get a similar behavior by creating a script that exports VK_ICD_FILENAMES pointing to AMDVLK json icd file (or radv icd if you install AMDVLK system wide).

      Comment


      • #4
        So far I never tried AMDVLK. RADV works too well!

        Comment


        • #5
          All of this is quite confusing. Can someone please explain a little bit? Why two Vulkan drivers for same GPUs? I have Radeon 5700 XT and mesa drivers. Which Vulkan driver do I have? How to check that? Why would I want to switch to other driver?
          Thanks.

          Comment


          • #6
            Radv is mesa based community driver, amdvlk is amd official driver, that shares the same code as their windows driver, If I am correct. But they have the same perfs basically, making the choice unobvious. So, 2 good open source drivers for amd gpus vs 0 good one on nvidia side because they make nothing so it can happen.

            Comment


            • #7
              Originally posted by piorunz View Post
              All of this is quite confusing. Can someone please explain a little bit? Why two Vulkan drivers for same GPUs? I have Radeon 5700 XT and mesa drivers. Which Vulkan driver do I have? How to check that? Why would I want to switch to other driver?
              Thanks.
              There are two Vulkan drivers (technically three actually) because before the Vulkan 1.0 specification was released, AMD promised an open source Vulkan implementation but didn't deliver on it for many months. In the mean time, Dave Airlie from RedHat and Bas Nieuwenhuizen from Google used as a basis the Mesa infrastructure and the "ANV" Vulkan implementation that Valve had pioneered with Mesa to create RADV. More info here: https://www.phoronix.com/scan.php?pa...kan-radv&num=1

              AMD eventually released their open source AMDVLK package as open source, but their releases are still very much "toss over the wall" without much community involvement. https://github.com/GPUOpen-Drivers/AMDVLK . Hence RADV still gets support from Valve and the gaming community to the point where it's usually better performing for gaming. AMD's native package still has value for documenting the hardware, and as the basis for the third driver, their "AMDGPU-PRO" package which replaces LLVM with their own proprietary compiler, OpenGL driver, OpenCL driver, etc. This driver is most useful for compute focused workloads that want something certified, or have specific OpenCL needs.

              To tell which is which:
              1. If you only have Mesa installed and the 'amdgpu' kernel driver, you probably already have RADV or only need to add the appropriate RADV package from your distro. If you're just gaming, this is most likely what you want.
              2. If you have the 'amdgpu' kernel driver, you can install your distros 'amdvlk' package to get AMD's Vulkan. Then uninstall RADV or use environment variables to control which one is used on a per-app basis.
              3. If you have a particular compute application that needs OpenCL, you can install the AMDGPU-Pro package. More info here: https://amdgpu-install.readthedocs.i...nstalling.html

              Comment


              • #8
                Originally posted by perpetually high View Post

                Small typo on RDNA 2

                So just to confirm, when the binaries get released, I can install those and then set the environment variable AMD_VULKAN_ICD=RADV system-wide for normal default use, then when I want to switch to AMDVLK for a particular app/game I can just do AMD_VULKAN_ICD=AMDVLK ./game, is that correct?
                Tyypypytoooooo:
                This Vulkan layer was added today as part of this XGL commit. This update also has performance tuning for Navi 2 (RNDA 2) with X-Plane, The Talos Principle, Mad Max, F1 2017, and Rise of the Tomb Raider.

                Comment


                • #9
                  Originally posted by rmfx View Post
                  Radv is mesa based community driver, amdvlk is amd official driver, that shares the same code as their windows driver, If I am correct. But they have the same perfs basically, making the choice unobvious. So, 2 good open source drivers for amd gpus vs 0 good one on nvidia side because they make nothing so it can happen.
                  RADV is included with Mesa and thereby the default in every Linux distribution I know. I would guess (but I don't know it for a fact) that Google's Linux for Stadia may use AMDVLK.

                  Comment


                  • #10
                    Originally posted by piorunz View Post
                    All of this is quite confusing. Can someone please explain a little bit? Why two Vulkan drivers for same GPUs? I have Radeon 5700 XT and mesa drivers. Which Vulkan driver do I have? How to check that? Why would I want to switch to other driver?
                    Thanks.
                    Did you ever check with gl-z for linux?

                    glz,opengl,vulkan,information,utility,cpu,gpu,monitoring,geexlab,windows,linux,raspbian,raspberry pi,gl-z,extensions,macosx,osx,glslhacker,extension,viewer,download

                    Comment

                    Working...
                    X