Preferences

It's a completely different driver for a different architecture. The biggest reason it works so much better is that it's open source (with some blobs, of course) and part of the mainline kernel, unlike its predecessor which was developed downstream and fully proprietary.

account42
amdgpu replaced both the in-kernel open-source "radeon" driver, which was already open source, and the proprietary "fglrx" driver.

But the user-space portions are probably more significant for performance than the kernel drivers. Here we have:

- r300 and r600 (open source OpenGL backend for older hardware, sits on top of the radeon kernel driver, not much development happening)

- radeonsi (open source OpenGL backend for newer hardware, sits on top of either the radeon or amdgpu kernel drivers depending on hardware version and kernel configuration)

- fglrx (closed source OpenGL driver on top of the fglrx kernel driver, both obsolete now)

- radv (open source Vulkan driver on top of amdgpu)

- amgpu-pro (closed source Vulkan driver on top of amdgpu) - not sure if there is also still a proprietary OpenGL driver but if there is no one should care since radeonsi works well enough

- amdvlk (open source dumps of amdgpu-pro without proprietary shader compiler on top of amdgpu)

Then you have different shader compilers which also significantly affect both shader compile time and runtime performance:

- internal compiler used by r600

- LLVM (used by radeonsi and amdvlk)

- ACO (used by radv and possibly radeonsi these days)

- AMD's proprietary compiler (used by fglrx and amdgpu-pro)

And for X.org you also have different display drivers (fglrx, radeon, modesetting).

This item has no comments currently.