So the main problem is, I don't know why but as the GPU's clock speed crosses 400-500MHz the GPU crashes. To prevent that from happening we can set power_dpm_state
to be on battery
mode, which gives an average of 400MHz of GPU without crashing.
(With DPM disabled, the max clock speed used to be 300MHz, so it seemed to be a solution at first)
-
First, enable DPM by adding amdgpu.dpm=1
in front of GRUB_CMDLINE_LINUX_DEFAULT variale in the grub config (/etc/default/grub
).
-
Then sudo nano /etc/udev/rules.d/30-amdgpu-pm.rules
and add the contents as below
GNU nano 5.8 /etc/udev/rules.d/30-amdgpu-pm.rules
KERNEL=="card1", SUBSYSTEM=="drm", DRIVERS=="amdgpu", ATTR{device/power_dpm_state}="battery"
(you might want to confirm if your AMD GPU is identified as card1
or card2
by checking if the directory /sys/class/drm/card1/device/
or /sys/class/drm/card0/device/
has the file power_dpm_state
----> this is only the case if you have multiple GPU, if you have only one GPU then it would be card0. And power_dpm_state
setting is specific only for AMD cards and not all AMD card has this setting).
Only follow these instructions if you have the same issue as mentioned in the post.
You can also install corectrl
and radeontop
and check them out.
So this is the maximum I can get out of my GPU (around 400MHz of clock speed, and if it goes any more the GPU crashes). I also learned that my discrete AMD GPU doesn't work automatically to help render heavy graphics unless I start an application with DRI_PRIME=1
by using radeontop
And since I can't run my GPU at full capacity, it seems that the integrated intel GPU performs better than my AMD GPU when I run FlightGear.
It seems my AMD GPU is not useful in Linux !,
The same issue is there in my Linux Mint installation.
Also with radeon drivers as well
So I can't say this is a solution to this problem.
Following this answer, you can get the most of the AMD GPU(400MHz of clock speed), but the integrated GPU is better than 400MHz of AMD GPU
But in Windows, my same AMD card can go up to 1000-1200 MHz of clock speed.
It would be really wonderful if some Devs here can give me insight into this issue.
Should I mark it as the solution?
This is how I got to this explanation:Not able to execute this command: sudo echo balanced > /sys/class/drm/card0/device/power_dpm_state - #31 by Austin

Thank you for your time.