I recently got the Alienware M18 R1 AMD gaming ‘laptop’. I got this computer because AMD GPUs are supposed to be better supported in Linux than NVIDIA ones. Of course, I have almost always used NVIDIA before, so it actually seems a little tougher at the moment!
Anyway, I’m just going to list some things that I’ve been figuring out…
In order for GPU switching to actually work, I need to add a boot time kernel parameter. My original source used two… I’m not sure if the pcie one is necessary, but I included it.
amdgpu.runpm=0
pcie_aspm=off
The parameters can be added to /etc/default/grub.conf. In Fedora Workstation, you can add them in one command:
grubby --args="amdgpu.runpm=0 pcie_aspm=off" --update-kernel=ALL
In Fedora Silverblue, the parameters can be added using the following commands:
rpm-ostree kargs --append=amdgpu.runpm=0
rpm-ostree kargs --append=pcie_aspm=off
The Steam client doesn’t like to work using the dedicated graphics card. That’s okay, because the games will. To make Steam start using the integrated GPU by default, copy the steam .desktop file from /usr/share/applications (or /var/lib/flatpak/exports/share/applications/ if you use flatpak) to ~/.local/share/applications/, then edit it to change these lines from true to false:
PrefersNonDefaultGPU=false
X-KDE-RunOnDiscreteGpu=false
Also, for Steam, the download speeds are super slow unless you apply the following fix:
Edit the file ~/.steam/steam/steam_dev.cfg.
Add the following line:
@nClientDownloadEnableHTTP2PlatformLinux 0
You can also add the following line to increase the number of servers that the client connects to, though it can sometimes actually slow the downloads down: @fDownloadRateImprovementToAddAnotherConnection 1.0