You are not logged in.
I recently upgraded from a Radeon HD 7950 to an RX 580. I also switched drivers from radeon to amdgpu (18.1.0). All installed programs are completely up to date. I have 3 monitors: an LG 4k UHD with DisplayPort input, a Westinghouse 1080p TV with HDMI input, and an AOC 1080p monitor with DVI to HDMI input.
When running any games (only tested in fullscreen so far), small portions of the 4k screen will become garbage or green, usually garbage. The garbage portions are always full horizontal rows of pixels, usually about 100px tall or so by rough estimate. The 4k monitor will also occasionally go to a black screen for a few seconds.
My amdgpu configuration is: https://pastebin.com/RTNSW8Eu
My Xorg log is: https://pastebin.com/CBPftQiB
The timestamps on the EDID timing clock lines match with my uptime when the screen goes black. I have amdgpu.dc=0 set, and I have tried disabling DPM as recommended in the Arch Wiki. The issues are only present on the 4k monitor, and the issues did not exist at all on the HD 7950.
I have noticed that these issues do not occur at all in Portal 2 with Double Buffered or Triple Buffered VSync enabled. Other games I have tested are Half Life 2, Half Life 2 Episode Two, and Monster Hunter World via Proton. All have this issue. The issues also exists when I lower the monitors resolution. Tested as far down as 1080p30, still present.
Finally, I have also rarely spotted this outside of games when watching YouTube.
Thanks in advance for help, if any more info is needed I am willing to provide it!
Last edited by OniLink (2018-10-06 03:56:11)
Offline
Wild guess would be amdgpu.audio=0 - can you provide a photo of the actual effect?
Offline
amdgpu.audio=0 does not help, sadly.
A video of both issues is here, captured via my phone so please forgive the potato quality: https://www.youtube.com/watch?v=BMLD8OYUZOg
You can at least see both the blackouts and the bits of garbage data.
Last edited by OniLink (2018-10-03 13:52:54)
Offline
Was it already an issue with Kernel 4.18.9? Just recognized some broken idle behaviour in my setup (HD7450 + RX580) since 4.18.10, but haven't looked into it further yet.
Offline
That certainly looks like the pixel clock isn't fast enough to feed the signal…
1. are you positive about dc=0? (check "systool -vm amdgpu")
2. do away w/ all power saving: amdgpu.dpm=0 amdgpu.aspm=0 amdgpu.runpm=0 amdgpu.bapm=0
3. another thing that looks interesting: amdgpu.deep_color=0
4. Is the GPU sufficiently power supplied? Does it have an extra 6/8pin power adapter? Is it properly seated in the pcie slot?
Offline
Was it already an issue with Kernel 4.18.9? Just recognized some broken idle behaviour in my setup (HD7450 + RX580) since 4.18.10, but haven't looked into it further yet.
It's been having issues since I first installed it, I was already on 4.18.10. I will try downgrading to 4.18.9 if nothing else works.
Offline
That certainly looks like the pixel clock isn't fast enough to feed the signal…
1. are you positive about dc=0? (check "systool -vm amdgpu")
2. do away w/ all power saving: amdgpu.dpm=0 amdgpu.aspm=0 amdgpu.runpm=0 amdgpu.bapm=0
3. another thing that looks interesting: amdgpu.deep_color=0
4. Is the GPU sufficiently power supplied? Does it have an extra 6/8pin power adapter? Is it properly seated in the pcie slot?
The systool command shows dc = "0". It has a single 8-pin power plug, no second plug. The issue also persists when I use xrandr to reduce the monitor's resolution to 1080p30. It also only appears on the monitor attached to DisplayPort, with any of the DisplayPort outputs. I have tried three separate cables, including one purchased fresh off Amazon from AmazonBasics. Double checking now that it is fully seated and testing the other kernel options.
EDIT: Everything is seated and plugged in properly. Out of the flags listed, setting amdgpu.dpm=0 fixes the problem but drops performance to around 10% of what it normally is (20fps instead of 200fps for same game scene, resolution and settings)
Last edited by OniLink (2018-10-05 05:56:15)
Offline
Try to re-enable DPM, but enforce a profile ("high"), see https://wiki.archlinux.org/index.php/AT … management
Maybe also play w/ the strategies.
Offline
Try to re-enable DPM, but enforce a profile ("high"), see https://wiki.archlinux.org/index.php/AT … management
Maybe also play w/ the strategies.
Enforcing high or low profile by echoing to the DPM files results in the same issues. Trying to set the strategy to anything other than performance results in a near-immediate (maybe immediate?) reversion to performance. I also attempted to switch to profile mode as described in https://www.x.org/wiki/RadeonFeature/#index3h2 but got "permission denied" upon echoing despite being su'd to root. Exact output:
[root@kody ~]# echo profile > /sys/class/drm/card0/device/power_method
bash: /sys/class/drm/card0/device/power_method: Permission denied
Last edited by OniLink (2018-10-05 06:42:51)
Offline
Try to re-enable DPM, but enforce a profile ("high"), see https://wiki.archlinux.org/index.php/AT … management
Maybe also play w/ the strategies.
chaning the profile with > 4.18.9 seems to have no effect, because the card sticks at highest clocks always anyway.
Offline
Can confirm: downgrading to Linux 4.18.9 and playing with profiles allowed me to get it working perfectly! It runs at about 50% of max speed but that's well over 60fps for the games I play, so it's acceptable for now. It still encounters the same problems when I let it run at the default auto or high profiles, but I'm going to assume that'll be fixed with future patches. Is there somewhere specific upstream I should report? Or wait for the DPM bug introduced in 4.18.10 to be fixed, then test and report?
Offline
How do you know it's about 50%? Comparing to windows or other linux benchmarks? Which profile are you using now?
Offline