本文档意于指导用户用户快速掌握在linux系统下查看X100芯片显示模块方面的状态信息,了解芯片的实时工作状态。
1 查看驱动使用计数
在桌面环境下,有时需要确认是否使用了GPU加速,可使用以下命令查看pvrsrvkm模块的使用计数,例如
test@test:~$ lsmod | grep pvrsrvkm
pvrsrvkm 1093632 55
最后一列的55说明该模块的使用计数为55,属于正常范围。如果在桌面环境下该值为0,说明没有使用GPU加速,存在异常,需进一步分析原因。
2 查看GPU驱动版本信息
GPU驱动提供了可用于查看GPU驱动版本的sysfs调试接口,命令如下:
sudo su
cd /sys/kernel/debug/pvr/
cat version
输出示例如下:
Driver Version: Rogue_DDK_Linux_WS rogueddk 1.16@6099580 (volcanic) (release) build options: 0x00000810 ft_pci
Device Name: ft
Device ID: 0:128
GPU variant BVNC: 30.3.816.20 (HW)
Firmware Version: 1.16 @ 6099580 (release) build options: 0x80000810 ft_pci
3 查看GPU物理显存大小
新版驱动提供显示当前物理显存总容量的接口:
sudo su
cd /sys/kernel/debug/pvr/
cat physical_vram_size
输出示例如下:
root@test:/home/test# cat /sys/kernel/debug/pvr/physical_vram_size
2147483648
4 查看GPU显存使用情况
GPU驱动提供了可用于查看GPU显存使用情况的sysfs调试接口,命令如下:
sudo su
cd /sys/kernel/debug/pvr/
cat driver_stats
输出示例如下:
MemoryUsageKMalloc 2917888
MemoryUsageKMallocMax 3327232
MemoryUsageVMalloc 143360
MemoryUsageVMallocMax 393216
MemoryUsageAllocPTMemoryUMA 0
MemoryUsageAllocPTMemoryUMAMax 0
MemoryUsageVMapPTUMA 0
MemoryUsageVMapPTUMAMax 0
MemoryUsageAllocPTMemoryLMA 917504
MemoryUsageAllocPTMemoryLMAMax 1212416
MemoryUsageIORemapPTLMA 917504
MemoryUsageIORemapPTLMAMax 1212416
MemoryUsageAllocGPUMemLMA 134582272
MemoryUsageAllocGPUMemLMAMax 196947968
MemoryUsageAllocGPUMemUMA 8192
MemoryUsageAllocGPUMemUMAMax 8192
MemoryUsageAllocGPUMemUMAPool 0
MemoryUsageAllocGPUMemUMAPoolMax 0
MemoryUsageMappedGPUMemUMA/LMA 108404736
MemoryUsageMappedGPUMemUMA/LMAMax 167813120
MemoryUsageDmaBufImport 55341056
MemoryUsageDmaBufImportMax 61952000
其中:MemoryUsageAllocGPUMemLMA表示当前已分配的GPU显存大小;
MemoryUsageAllocGPUMemLMAMax表示GPU驱动生命周期内分配过的最大GPU显存值;
MemoryUsageDmaBufImport表示当前GPU从其它设备(DC)导入的显存;
MemoryUsageDmaBufImportMax表示GPU驱动生命周期内GPU从其它设备导入的最大显存值。
可使用watch -n 1 cat driver_stats命令持续跟踪GPU显存的使用变化。
5 查看GPU利用率
GPU驱动提供了可用于查看GPU使用率的sysfs调试接口,命令如下:
sudo su
cd /sys/kernel/debug/pvr/
cat status
输出示例如下:
Driver Status: OK
Device ID: 0:128
Firmware Status: OK
Server Errors: 0
HWR Event Count: 0
CRR Event Count: 0
SLR Event Count: 0
WGP Error Count: 0
TRP Error Count: 0
FWF Event Count: 0
APM Event Count: 0
GPU Utilisation: 0%
最后一行表示GPU的利用率。
可结合watch命令持续跟踪GPU使用率的变化。
6 查看GPU当前温度
GPU驱动还提供了可用于查看GPU温度(更准确的说是X100的芯片温度)的sysfs调试接口,命令如下:
sudo su
cd /sys/kernel/debug/pvr/
cat cur_temp
示例输出:
411
表示当前GPU温度为41.1摄氏度。
可结合watch命令持续跟踪GPU温度变化。
7 查看GPU当前频率
GPU驱动提供了可用于查看GPU当前频率的sysfs调试接口,命令如下:
sudo su
cd /sys/kernel/debug/pvr/gpu00
cat debug_dump | grep freq
示例输出:
RGX DVFS: 0 frequency changes. Current frequency: 599.999 MHz (sampled at 80501813677440 ns). FW frequency: 600.000 MHz.
8 查看GPU动态调频信息
如果GPU内核驱动配置了DVFS支持,则可使用下列命令查看GPU动态调频相关信息:
9 查看当前策略
cat /sys/class/devfreq/devfreq#/governor
(其中#表示GPU创建的devfreq设备号,一般为0)
10 查看可用策略
cat /sys/class/devfreq/devfreq#/available_governor
可能值有performance、powersave等
11设置策略
echo performance > /sys/class/devfreq/devfreq#/governor
另外,还有一些通用device dvfs设置接口,如cur_freq、max_freq、min_freq等。
发表评论