OK, I've finally had time to play around a bit. How do I test whether PM is working?
I have drm-radeon-testing from today, and I've passed radeon.dynpm=1 to the kernel.
I have the Mesa, libdrm and ddx from git.
dmesg says:
Code:
[ 0.536165] [drm] Internal thermal controller with fan control
[ 0.536329] [drm] radeon: power management initialized
But it also says this (much later):
Code:
[ 441.708267] You have old & broken userspace please consider updating mesa
This is what happens:
Code:
# echo profile > /sys/class/drm/card0/device/power_method
# echo default > /sys/class/drm/card0/device/power_profile
# cat /sys/class/hwmon/hwmon0/temp1_input
69000
Code:
# echo low > /sys/class/drm/card0/device/power_profile
***** wait for a while... *****
# cat /sys/class/hwmon/hwmon0/temp1_input
62000
So, it seems to be working. It's not a huge difference, but it's a fanless card, so I guess it does run a bit hot in general.
Code:
# echo dynpm > /sys/class/drm/card0/device/power_method
# cat /sys/class/hwmon/hwmon0/temp1_input
60000
# glxgears
3203 frames in 5.0 seconds = 640.533 FPS
3735 frames in 5.0 seconds = 746.953 FPS
3984 frames in 5.0 seconds = 796.798 FPS
3991 frames in 5.0 seconds = 798.084 FPS
4217 frames in 5.0 seconds = 843.314 FPS
3589 frames in 5.0 seconds = 717.598 FPS
3459 frames in 5.0 seconds = 691.586 FPS
4012 frames in 5.0 seconds = 802.205 FPS
3649 frames in 5.0 seconds = 729.521 FPS
3484 frames in 5.0 seconds = 696.674 FPS
4091 frames in 5.0 seconds = 817.972 FPS
*** flicker flicker flicker ***
# cat /sys/class/hwmon/hwmon0/temp1_input
65000
So, it seems to be working. There is flicker while reclocking, and the glxgears numbers are a bit odd, as if it keeps reclocking up and down. I know it's not a benchmark, it was easier to check than OpenArena or something.