I am going to buy a new graphics card and can’t choose between Nvidia and AMD. I know that Nvidia has bad reputation in Linux community but how really it works? And I heard recently their drivers got better. What can you recommend?
P. S. I don’t want any proprietary drivers (so I am talking about Nouveau or any other FOSS Nvidia driver if it exists)
If you’re unwilling to use proprietary drivers AMD or Intel if yout friend. If you use proprietary drivers NVIDIA is mostly fine now.
I don’t want any proprietary drivers (so I am talking about Nouveau or any other FOSS Nvidia driver if it exists)
In that case AMD, no doubt about it.
If you were considering proprietary drivers it would still be AMD but there would be some discussion about it.
From what i’ve heard if your not willing to use the nvidia proprietary drivers then DON’T go for nvidia you will get terrible performance and amd will always be significantly better.
If you consider the proprietary drivers then I think it depends on your use case. For example AMD is better value if your gaming without ray tracing if you want to play with ray tracing or do any kind of productivity Nvidia is generaly the better option. For machine learning Nvidia has much better compatibility with everything so you will have a better time and better performance, Although if you only care about running the largest models you can with the available vram then AMD gpu’s will have more vram for the price.
Intel arc is also always an option if you are aiming for a lower tire/mid range card. They have really price competitive cards and unlike amd they have very decent ray tracing and productivity capability’s. They also have lots more vram for the price compared to Nvidia.
Also I highly recommend buying a used graphics card, you help the environment, save a lot of money and if you don’t like the card you chose you can sell it for the same price your bought it and buy a different one.
Maybe if you could specify your use case and what cards you are currently looking at I could help you out more.
I have no beef in this argument, and I’m certainly not biased in relation to AMD/Nvidia. However, my 980Ti, my 2070S and now my 4070S have all run really well under Linux. I run KDE Neon and a quick ‘sudo apt install nvidia-driver-570’ installs the latest beta’s in under 5 mins, if I want to roll back the driver a quick ‘sudo apt install nvidia-driver-565’ has me back on the latest feature branch. Yeah, Wayland adoption under Nvidia was slow, and Nvidia’s earlier choices weren’t what anyone could call ‘ideal’ - But momentum is building, and as a result I’ve been using Wayland for about eight months now without issue. Before that, X11 was largely faultless running Nvidia hardware/drivers.
People say Nvidia struggle in relation to VKD3D performance. I’m not too sure what they’re doing, but VKD3D runs fine here.
It’s the one advantage we have over Mac users: We can run AMD, Intel and Nvidia. We also have ongoing OGL support, native Vulkan support, better game support under Steam, a larger user base under Steam, and the amazing Proton implementation.
Whether it be AMD or Nvidia, I personally think it’s Linux for the win. EDIT: I in no way see value for money in the new 5080/5090 cards and I eagerly await what AMD has to offer (although I won’t be switching from my 4070S for quite some time yet).
Both work, just in different ways. I think AMD’s value proposition is better on Linux but if you were choosing between a 6700XT and a 4080 (for sake of example) of course the latter is still gonna be faster despite the drivers being a bit weirder to manage
The only reason I still go Nvidia is because I self host AI, which afaik takes advantage of CUDA and just runs overall better on Nvidia cards, or at the very least is easier to set up. Really, the top reason is that it’s the devil I know right now.
If I didn’t self host AI, I would 100% go AMD. Especially if you don’t want to use proprietary drivers. That being said, my old gaming laptop runs NixOS with Nouveau and there have definitely been improvements since I first tried it years ago, but I don’t do much gaming on it. It’s more a TV media station these days (so I can avoid the stupid smart TV bloat agenda, where your TV gets gradually slower and fits less increasingly-bloating apps over time).
If it’s just about self-hosting and not training, ROCm works perfectly fine for that. I self-host DeepSeek R1 32b and FLUX.1-dev on my 7900 XTX.
You even get more VRAM for cheaper.
ROCm
I’m curious. Say you are getting a new computer, put Debian on, want to run e.g. DeepSeek via ollama via a container (e.g. Docker or podman) and also play, how easy or difficult is it?
I know that for NVIDIA you install the (closed official) drivers, setup the container insuring you get GPU passthrough, and thanks to CUDA from the driver, you’re pretty much good to go. Is it the same for AMD? Do you “just” need to install another package or is there more tinkering involved?
I’m curious. Say you are getting a new computer, put Debian on, want to run e.g. DeepSeek via ollama via a container (e.g. Docker or podman) and also play, how easy or difficult is it?
On the host system, you don’t need to do anything. AMDGPU and Mesa are included on most distros.
For LLMs you can go the easy route and just install the Alpaca flatpak and the AMD addon. It will work out of the box and uses ollama in the background.
If you need a Docker container for it: AMD provides the handy
rocm/dev-ubuntu-${UBUNTU_VERSION}:${ROCM_VERSION}-complete
images. They contain all the required ROCm dependencies and runtimes and you can just install your stuff ontop of it.As for GPU passthrough, all you need to do is add a device link for
/dev/kfd
and/dev/dri
and you are set. For example, in a docker-compose.yml you just add this:devices: - /dev/kfd:/dev/kfd - /dev/dri:/dev/dri
For example, this is the entire Dockerfile needed to build ComfyUI from scratch with ROCm. The user/group commands are only needed to get the container groups to align with my Fedora host system.
spoiler
ARG UBUNTU_VERSION=24.04 ARG ROCM_VERSION=6.3 ARG BASE_ROCM_DEV_CONTAINER=rocm/dev-ubuntu-${UBUNTU_VERSION}:${ROCM_VERSION}-complete # For 6000 series #ARG ROCM_DOCKER_ARCH=gfx1030 # For 7000 series ARG ROCM_DOCKER_ARCH=gfx1100 FROM ${BASE_ROCM_DEV_CONTAINER} RUN apt-get update && apt-get install -y git python-is-python3 && rm -rf /var/lib/apt/lists/* RUN pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/rocm6.3 --break-system-packages # Change group IDs to match Fedora RUN groupmod -g 1337 irc && groupmod -g 105 render && groupmod -g 39 video # Rename user on newer 24.04 release and add to video/render group RUN usermod -l ai ubuntu && \ usermod -d /home/ai -m ai && \ usermod -a -G video ai && \ usermod -a -G render ai USER ai WORKDIR /app ENV PATH="/home/ai/.local/bin:${PATH}" RUN git clone https://github.com/comfyanonymous/ComfyUI . RUN pip install -r requirements.txt --break-system-packages COPY start.sh /start.sh CMD /start.sh
Very cool, thanks for the in depth explanation.
This is very good to know. I read that ROCm can be a pain to get up and running, but I read that months ago and this space is moving fast. I may switch over when I can if this is the case. My 3080 is feeling it’s age already. Thank you!
That used to be the case, yes.
Alpaca pretty much allows running LLM out of the box on AMD after installing the ROCm addon in Discover/Software. LM Studio also works perfectly.
Image generation is a little bit more complicated. ComfyUI supports AMD when all ROCm dependencies are installed and the PyTorch version is swapped for the AMD version.
However, ComfyUI provides no builds for Linux or AMD right now and you have to build it yourself. I currently use a simple Docker container for ComfyUI which just takes the AMD ROCm image and installs ComfyUI ontop.
Definitely bookmarking this reply. I haven’t tried ComfyUI yet, but I’ve had it starred on Github from back when it was fairly new. I’m no stranger to building from source, but I have not dived into Docker yet, which is becoming more and more of a weakness by the day. Docker is sometimes required by some really cool projects and I’m missing out.
if you are on linux AMD is the better choice, period.
don’t get me wrong nvidia will work relatively well, ive ran it before on linux and its actually improving. but it isnt worth the pricetag to have tons of small issues everywhere.
AMD is by far the best choice for foss drivers. Intel might be an option in the future but I have no experience with their new cards. A second option would be good for Linux users but it’s unlikely to be NVIDIA.
Honestly even on Windows I preferred AMD’s software suite compared to Nvidia control panel and GeForce Experience. Currently using a 7900XTX and pretty happy with it. Also I missed Radeon Chill when I was on Nvidia, didn’t expect to care about that at all, but I love it.
Like others have already said, if you want Foss drivers then AMD is your only choice.
However, if you want the most performant cards on the market then you can safely choose nvidia. The drivers work really well now, no tinkering required. Even multi monitor vrr works now with the latest drivers.
Stop listening to what people are parroting, nvidia used to be a bad choice, but not anymore. Even Linus Torvalds has changed his mind
So, when AI people came in, that was wonderful, because it meant somebody at NVIDIA had got much more involved on the kernel side, and NVIDIA went from being on my list of companies who are not good to my list of people who are doing really good work.
I put a 3060Ti in my latest build. The NVidia drivers would consistently hard lock my PC after about a day of uptime no matter what I did. I spent ages trying to hunt down the issue, and waited through several kernel and driver versions in vain hope, fuelled by people insisting that the NVidia drivers were “good now”. I switched to nvidia-open once that released (or once I realised it existed) to no avail. Nouveau was not available at all for those cards when I started and was still missing critical features at the end.
I think this is the first time I’ve ever encountered a kernel crash in nearly two decades of Linux computing. And second, and third and…
I switched to an AMD card, a 7600 (a generation newer! In case anyone thought this was a “new hardware” issue) and the problem was immediately gone, and my PC has returned to being my sanctuary.
My problem is exceptionally rare - I think i found one other person experiencing it over the course of 1-2 years. But the concept that NVidia had redeemed themselves continues to ring hollow for me.
I don’t want any proprietary drivers
So then you don’t want any NVIDIA.
The AMD open source Linux driver performs better than their Windows driver. And there is no proprietary AMD Linux driver, the official AMD driver for Linux is open source.
there is no proprietary AMD Linux driver
I mean, there is. It just isn’t recommended for most users.
didn’t know this. is it no good then? does it have the HDMI 2.1 driver missing from the open source driver?
It’s the pro driver for workstation use. If you are gaming then you don’t need it. The gaming driver is only open source
the driver is called AMDGPU PRO. it sits on top of the normal driver, and contains stuff specific to high performance compute and workstation workloads. i think it’s a requirement for properly fast ROCm but i’m not sure.
Yeah, don’t even get a driver. The kernel handles it well.
100% AMD, for sure. AMD won’t make much problems and works ootb.
Nvidia on the other hand… if you already have a Nvidia GPU, then the proprietary drivers work pretty well, but even those won’t work flawlessly and still cause problems for many people.
And the FOSS drivers are still in the early stages and won’t cut it. So why spend lots of money for a piece of hardware that won’t give you the performance you paid for?Also, Nvidia clearly doesn’t care about PCs or its’ users, so why support such a shitty company with your money?
I had a better desktop experience with the FOSS driver than the proprietary driver when testing a 2060 on Fedora 41.
FOSS driver only, the choices are AMD and Intel. Nvidia is out of the picture.
Of coursenouveau drivers are still around and under active development, but as far as I know the performance if still very far from reasonable expectations.
As someone who started using Linux while on Nvidia and stuck with it for over a year before going full AMD.
Just go AMD, so many little things I had to find workarounds for just because of Nvidias shitty drivers.
Even after Nvidia claimed to support wayland I could never get it to run on my install, then having to manually configure my xorg just to get my 170hz monitor working which then introduced graphical issues I just couldn’t fix…NONE of that was an issue the moment I swapped to a RX 7800 XT, didn’t even have to install any drivers they’re just standard in the kernal.
Same, been using an AMD card since building a new PC a few years ago and its been completely smooth sailing. My spouse also built a new PC at the same time but decided to go nvidia instead and has had constant problems (now regrets not going AMD as well) and has yo regularly downgrade the driver and/or kernel just to have a working system or games that don’t have things like vertices explosions.
If you don’t want proprietary drivers the choice is quite straightforward: AMD. The official drivers are open source.
As for my experience, I’ve had absolutely no problems in the last few years with AMD, but I have to admit that I have always been using an iGPU, which has always been good enough for my needs.
I used to have problems with Nvidia proprietary drivers, but that was at least a couple years ago, things might have changed. I’ve never had issues with the free unofficial drivers, besides worse performance.