飞腾平台X100芯片显示信息查阅指南

飞腾平台X100芯片显示信息查阅指南

本文档意于指导用户用户快速掌握在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等。