I’m running CachyOS, and having an Nvidia card, I’m using their Nvidia-specific kernel. I know this 3060 won’t last forever, and I’m planning to upgrade to an AMD card for a better overall experience.

Is there anything I should be aware of regarding the kernel or other compatibility when switching brands? Can I simply plug in the new one and run pacman -Syu?

Sidenote: I will plan around my PSU’s output, so no need to advise regarding physical compatibility.

  • Vik
    link
    fedilink
    English
    arrow-up
    11
    ·
    16 hours ago

    If any of your workflows rely on cuda (or any form of gfx compute), you may have a difficult time achieving comparable performance. hopefully rocm is directly packaged for arch + derivs soon, like it is with Fedora, as you’ll be able to use that codepath for OpenCL if they don’t directly offer support for HIP or ROCm.

    My typical hangups there would be like, digital film production and other forms of rendering, CAD, physics simulations, and client apps like Folding@home.

    • frongt@lemmy.zip
      link
      fedilink
      arrow-up
      4
      ·
      16 hours ago

      This. As far as general 3D work, nope, just install the card and the drivers and off you go.

      But if you want to do any compute stuff on the gpu you’re in for a rough time. Like 95% of that software is targeted to Nvidia. There is a bit of work going on to adapt cuda stuff to AMD (rocm and hip like you mentioned), but most developers don’t support it. Last time I tried (about a year ago), I was able to get about a quarter of the software I tried half working.

    • Lucy :3@feddit.org
      link
      fedilink
      arrow-up
      3
      ·
      16 hours ago

      Actually, there is one more package you might need: vulkan-radeon. The nvidia package, which you can remove then, provided that implementation itself.

      • Vik
        link
        fedilink
        English
        arrow-up
        1
        ·
        15 hours ago

        huh, that’s interesting. what does that provide to the system? Is that like having the lunarg loader present on a windows install?

        • Lucy :3@feddit.org
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          14 hours ago

          It basically allows vulkan, the graphics engine, to work with AMD driver (which resides in the kernel). For OpenGL to work with it, you need the mesa package, but that’s usually installed anyway.

          Edit: graphics API, not engine

          • Vik
            link
            fedilink
            English
            arrow-up
            1
            ·
            15 hours ago

            Isn’t that part already covered by the radv mesa driver? I’m really confused. did you mean to refer to vulkan as a 3D gfx API rather than an engine? Or are there specific rendering engine workarounds included in the aforementioned package?

            • Lucy :3@feddit.org
              link
              fedilink
              arrow-up
              1
              ·
              14 hours ago

              mesa only coveres, OpenGL, according to the arch wiki.

              also, the former, I couldn’t remember the correct word

              • Vik
                link
                fedilink
                English
                arrow-up
                1
                ·
                edit-2
                13 hours ago

                That’s not correct, though it may be ASIC specific. Can you tell me which GPU you’re using?

                IME, GCN4 and up are all seamlessly served by the radv mesa driver. If this person upgrades to a newer AMD GPU, they will not need to manually install a Vulkan ICD

                To add, there are mesa vulkan drivers for Intel (ANV, which is the original basis of RADV), nvidia (NVK), Qualcomm (Turnip), and Apple Silicon (forgot the name but something apple-y I hope), and several others.

                I’m not sure if there’s any caveats specific to arch, I’ve not used it much outside of EndeavourOS, and primarily use Fedora, though the former was a completely plug and play experience across several systems with various generations of AMD graphics.

                • Lucy :3@feddit.org
                  link
                  fedilink
                  arrow-up
                  1
                  ·
                  edit-2
                  13 hours ago

                  I’ve just always followed the Arch wiki, and never tried using Vulkan without vulkan-radeon on my one PC with an AMD card. The wiki states: “Install the mesa package, which provides both the DRI driver for 3D acceleration and VA-API/VDPAU drivers for accelerated video decoding.” and “For Vulkan support install vulkan-radeon (lib32-vulkan-radeon for 32-bit applications).”.The vulkan page itself says:

                  To run a Vulkan application, you will need to install the vulkan-icd-loader package (and lib32-vulkan-icd-loader from the multilib repository if you also want to run 32-bit applications), as well as Vulkan drivers for your graphics card(s). There are several packages providing a vulkan-driver and lib32-vulkan-driver:
                  
                      AMD: vulkan-radeon (or lib32-vulkan-radeon)
                      Intel: vulkan-intel (or lib32-vulkan-intel)
                      NVIDIA: there are two implementations:
                          nvidia-utils (or lib32-nvidia-utils) - NVIDIA proprietary
                          vulkan-nouveau (or lib32-vulkan-nouveau) - NVK (part of Mesa project)
                  

                  The vulkan-radeon package provides the ICD (

                  # pacman -Qlq vulkan-radeon | grep -v '/$'
                  /usr/lib/libvulkan_radeon.so
                  /usr/share/drirc.d/00-radv-defaults.conf
                  /usr/share/licenses/vulkan-radeon/license.rst
                  /usr/share/vulkan/icd.d/radeon_icd.json
                  

                  ); so does nvidia-utils (

                  # pacman -Qlq nvidia-utils | grep -i icd | grep -v '/$'
                  /usr/share/vulkan/icd.d/nvidia_icd.json
                  /usr/share/vulkansc/icd.d/nvidia_icd_vksc.json
                  )
                  

                  , but mesa does not.

                  • Vik
                    link
                    fedilink
                    English
                    arrow-up
                    2
                    ·
                    13 hours ago

                    That’s interesting. You generally don’t need to manually install that. You’ve prompted me to play around with arch once I return from the most beautiful city in the world.

                    Which distro and dgpu are you using, if you don’t mind me asking?

    • Telorand@reddthat.comOP
      link
      fedilink
      arrow-up
      3
      ·
      16 hours ago

      Thankfully, I don’t do much GPU computing outside of simple video editing and games. Cuda was never a selling point for me; it was mainly raytracing, and generally speaking, I don’t use it much anymore now that I’ve experienced the wow factor.

      • BurgerBaron@quokk.au
        link
        fedilink
        English
        arrow-up
        2
        ·
        12 hours ago

        It’s almost plug&play for you then. The only thing besides following the wiki that’s already mentioned is to look up AMD specific Proton launch arguments like forcing games to use FSR4.

      • Vik
        link
        fedilink
        English
        arrow-up
        2
        ·
        15 hours ago

        You should be fairly well served then. reach out to us if you face any bottlenecks with gfx compute.