# cat /sys/kernel/debug/dri/64/radeon_pm_info
uvd vclk: 0 dclk: 0
power level 0 sclk: 37500 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
# cat /sys/class/drm/card0/device/power_dpm_state
balanced
# dmesg | grep -C 10 "power state"
[ 2.812211] [drm] radeon/TAHITI_mc2.bin: 31232 bytes
[ 2.815019] [drm] Internal thermal controller with fan control
[ 2.815074] [drm] probing gen 2 caps for device 8086:c01 = 261ad03/e
[ 2.815088] == power state 0 ==
[ 2.815089] ui class: none
[ 2.815090] internal class: boot
[ 2.815091] caps:
[ 2.815092] uvd vclk: 0 dclk: 0
[ 2.815093] power level 0 sclk: 50000 mclk: 15000 vddc: 950 vddci: 875 pcie gen: 3
[ 2.815093] status: c r b
[ 2.815094] == power state 1 ==
[ 2.815094] ui class: performance
[ 2.815095] internal class: none
[ 2.815096] caps:
[ 2.815096] uvd vclk: 0 dclk: 0
[ 2.815097] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 2.815098] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 2.815099] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 2.815099] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 2.815100] status:
[ 2.815100] == power state 2 ==
[ 2.815101] ui class: none
[ 2.815101] internal class: uvd
[ 2.815102] caps: video
[ 2.815103] uvd vclk: 100000 dclk: 75000
[ 2.815103] power level 0 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 2.815104] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 2.815105] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 2.815105] status:
[ 2.815109] input: UVC Camera (046d:08ca) as /devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0/input/input23
[ 2.815157] usbcore: registered new interface driver uvcvideo
--
[ 3.483730] [drm] DDC: 0x6560 0x6560 0x6564 0x6564 0x6568 0x6568 0x656c 0x656c
[ 3.483730] [drm] Encoders:
[ 3.483731] [drm] DFP3: INTERNAL_UNIPHY1
[ 3.483731] [drm] Connector 3: 0x658c
[ 3.483733] [drm] Encoders:
[ 3.483734] [drm] DFP4: INTERNAL_UNIPHY
[ 3.483734] [drm] CRT1: INTERNAL_KLDSCP_DAC1
[ 3.483993] switching from power state:
[ 3.483993] ui class: none
[ 3.483994] internal class: boot
[ 3.483995] caps:
[ 3.483996] uvd vclk: 0 dclk: 0
[ 3.483997] power level 0 sclk: 50000 mclk: 15000 vddc: 950 vddci: 875 pcie gen: 3
[ 3.483997] status: c b
[ 3.483998] switching to power state:
[ 3.483999] ui class: performance
[ 3.483999] internal class: none
[ 3.484000] caps:
[ 3.484001] uvd vclk: 0 dclk: 0
[ 3.484001] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 3.484002] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 3.484003] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 3.484003] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 3.484004] status: r
[ 3.591085] [drm] fb mappable at 0xE0478000
--
[ 4.743161] systemd-logind[1087]: Watching system buttons on /dev/input/event1 (Sleep Button)
[ 4.849961] e1000e 0000:00:19.0: irq 46 for MSI/MSI-X
[ 4.945833] vboxdrv: module verification failed: signature and/or required key missing - tainting kernel
[ 4.947907] vboxdrv: Found 8 processor cores.
[ 4.948077] vboxdrv: fAsync=0 offMin=0x1e6 offMax=0x1cff
[ 4.948150] vboxdrv: TSC mode is 'synchronous', kernel timer mode is 'normal'.
[ 4.948152] vboxdrv: Successfully loaded version 4.3.18_Ubuntu (interface 0x001a0008).
[ 4.953667] e1000e 0000:00:19.0: irq 46 for MSI/MSI-X
[ 4.953737] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 4.955796] vboxpci: IOMMU not found (not registered)
[ 5.653293] switching from power state:
[ 5.653295] ui class: performance
[ 5.653296] internal class: none
[ 5.653297] caps:
[ 5.653298] uvd vclk: 0 dclk: 0
[ 5.653299] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 5.653299] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 5.653300] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 5.653301] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 5.653301] status: c r
[ 5.653302] switching to power state:
[ 5.653303] ui class: performance
[ 5.653303] internal class: none
[ 5.653304] caps:
[ 5.653304] uvd vclk: 0 dclk: 0
[ 5.653305] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 5.653306] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 5.653306] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 5.653307] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 5.653307] status: c r
[ 5.668135] switching from power state:
[ 5.668139] ui class: performance
[ 5.668139] internal class: none
[ 5.668140] caps:
[ 5.668141] uvd vclk: 0 dclk: 0
[ 5.668142] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 5.668143] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 5.668144] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 5.668144] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 5.668145] status: c r
[ 5.668146] switching to power state:
[ 5.668148] ui class: performance
[ 5.668148] internal class: none
[ 5.668149] caps:
[ 5.668149] uvd vclk: 0 dclk: 0
[ 5.668150] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 5.668151] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 5.668151] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 5.668152] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 5.668152] status: c r
[ 5.810824] init: plymouth-upstart-bridge main process ended, respawning
--
[ 5.831330] systemd-logind[1087]: Failed to start unit [email protected]: Unknown unit: [email protected]
[ 5.831334] systemd-logind[1087]: Failed to start user service: Unknown unit: [email protected]
[ 5.833494] systemd-logind[1087]: New session c1 of user lightdm.
[ 5.833504] systemd-logind[1087]: Linked /tmp/.X11-unix/X0 to /run/user/112/X11-display.
[ 8.420297] e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[ 8.420325] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 8.980945] systemd-logind[1087]: Failed to start unit [email protected]: Unknown unit: [email protected]
[ 8.980949] systemd-logind[1087]: Failed to start user service: Unknown unit: [email protected]
[ 8.983253] systemd-logind[1087]: New session c2 of user mladen.
[ 8.983263] systemd-logind[1087]: Linked /tmp/.X11-unix/X0 to /run/user/1000/X11-display.
[ 9.940322] switching from power state:
[ 9.940324] ui class: performance
[ 9.940325] internal class: none
[ 9.940326] caps:
[ 9.940327] uvd vclk: 0 dclk: 0
[ 9.940328] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 9.940329] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 9.940330] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 9.940330] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 9.940331] status: c r
[ 9.940332] switching to power state:
[ 9.940332] ui class: performance
[ 9.940332] internal class: none
[ 9.940333] caps:
[ 9.940334] uvd vclk: 0 dclk: 0
[ 9.940334] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 9.940335] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 9.940336] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 9.940336] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 9.940337] status: c r
[ 9.994641] switching from power state:
[ 9.994644] ui class: performance
[ 9.994645] internal class: none
[ 9.994646] caps:
[ 9.994646] uvd vclk: 0 dclk: 0
[ 9.994648] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 9.994648] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 9.994649] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 9.994650] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 9.994650] status: c r
[ 9.994651] switching to power state:
[ 9.994652] ui class: performance
[ 9.994652] internal class: none
[ 9.994653] caps:
[ 9.994653] uvd vclk: 0 dclk: 0
[ 9.994654] power level 0 sclk: 30000 mclk: 15000 vddc: 850 vddci: 875 pcie gen: 3
[ 9.994655] power level 1 sclk: 50100 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
[ 9.994655] power level 2 sclk: 100000 mclk: 150000 vddc: 1144 vddci: 875 pcie gen: 3
[ 9.994656] power level 3 sclk: 110000 mclk: 150000 vddc: 1200 vddci: 875 pcie gen: 3
[ 9.994656] status: c r
[ 34.779117] audit_printk_skb: 72 callbacks suppressed
正如您所见,我包含了 dmesg 中的所有相关部分。
# cat /sys/class/drm/card0/device/power_dpm_force_performance_level
auto
# echo "low" /sys/class/drm/card0/device/power_dpm_force_performance_level
low /sys/class/drm/card0/device/power_dpm_force_performance_level
# echo "low" > /sys/class/drm/card0/device/power_dpm_force_performance_level
# cat /sys/class/drm/card0/device/power_dpm_state
balanced
# cat /sys/kernel/debug/dri/64/radeon_pm_info
uvd vclk: 0 dclk: 0
power level 0 sclk: 37500 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
#
# echo "performance" > /sys/class/drm/card0/device/power_dpm_state
# cat /sys/kernel/debug/dri/64/radeon_pm_info
uvd vclk: 0 dclk: 0
power level 0 sclk: 37500 mclk: 150000 vddc: 950 vddci: 875 pcie gen: 3
#
问题(抱歉说了这么长但我认为它可能有帮助):
为什么在功率等级 0 中这些值如此之高且与 dmesg 不一致?可能是什么原因造成的?
答案1
电源状态会根据 GPU 的当前配置进行动态调整。我怀疑您连接了多个显示器,因此时钟频率更高。动态 mclk 切换是在垂直消隐期间进行的,因此只有在连接单个显示器时才能进行。连接多个显示器时,mclk 被强制为高电平。可能还需要根据当前要求调整最小/最大 sclk 级别。