在OpenHarmony上适配图形显示【4】——Mali GPU 调试小工具

目前适配oh的芯片大部分是arm的,而且都是mali系列的GPU。例如rk的rk3568、rk3576、rk3562、rk3588等。还有展锐的7885、7883,以及此芯的P1和全志的t527。笔者将arm的libGPUInfo和libGPUMan工具使用分享如下。

系列文章

  • 在OpenHarmony上适配图形显示【1】------确认drm是否正常\](https://ost.51cto.com/posts/36377)

  • 在OpenHarmony上适配图形显示【3】------添加显示接口类型\](https://ost.51cto.com/posts/36385)

libGPUInfo 、libGPUMan

这两个是arm开源的Mali信息查询和性能监控工具

开源地址:

oh上编译方法:

```

git clone https://gitee.com/OpenHarmony_rk_equipment_transplantation/ttyd_openharmony.git

cd ttyd_openharmony/lycium/

设置oh交叉编译环境

export OHOS_SDK=/root/OpenHarmony/cix_myself_5.0.0/prebuilts/ohos-sdk/linux/12

编译依赖库

./build.sh libGPUInfo

编译htop

./build.sh libGPUMan

编译好的文件在ttyd_openharmony/lycium/usr/libGPUInfo和ttyd_openharmony/lycium/usr/libGPUMan

```

效果

以7885为例

![image.png](https://dl-harmonyos.51cto.com/images/202510/065334351cf1dac22e099869db6df606395d0d.png?x-oss-process=image/resize,w_820,h_905)

```

./arm_gpuinfo

Device configuration:

Kernel version: 5.15.74-g0064799c8213-dirty # Linux内核版本,dirty表示有本地修改未提交

GPU configuration:

Name: Mali-G57 # GPU产品名称,中端移动GPU

Architecture: Valhall # GPU架构名称,ARM现代GPU架构

Architecture version: 9.0 # 架构版本号,Valhall第9代

Model number: 0x9001 # 硬件型号识别码

Core count: 4 # 着色器核心数量,共4个核心

Core mask: 0x50005 # 核心拓扑位掩码,标识核心布局

L2 cache count: 2 # L2缓存切片数量

Total L2 cache size: 524288 bytes # L2缓存总大小,512KB (524288/1024)

Bus width: 128 bits # 外部数据总线宽度,每个缓存切片128位

Per-core statistics: # 单个着色器核心的性能指标

Engine count: 2 # 执行引擎/算术宏块数量

FP32 FMAs: 32/cy # 单精度浮点乘加运算峰值:32次/周期

FP16 FMAs: 64/cy # 半精度浮点乘加运算峰值:64次/周期

Texels: 4/cy # 双线性过滤纹理采样峰值:4个纹理元素/周期

Pixels: 2/cy # 像素处理峰值:2个像素/周期

Per-GPU statistics: # 整个GPU(4个核心)的汇总性能指标

FP32 FMAs: 128/cy # 总单精度浮点性能:128次/周期 (32×4)

FP16 FMAs: 256/cy # 总半精度浮点性能:256次/周期 (64×4)

Texels: 16/cy # 总纹理采样性能:16个纹理元素/周期 (4×4)

Pixels: 8/cy # 总像素处理性能:8个像素/周期 (2×4)

```

![image.png](https://dl-harmonyos.51cto.com/images/202510/5137142921ddd48513f84946ef839ea411cd2f.png?x-oss-process=image/resize,w_820,h_481)

```

./gpu_manager # GPU管理工具输出

GPU configuration: # GPU配置信息

Name: Mali-G57 4 cores r0p1 0x9091 # GPU型号:Mali-G57,4个着色器核心,修订版本r0p1,硬件ID 0x9091

DDK version: r34p0-01eac0 (UK version 11.31) # Mali驱动开发包版本:r34p0-01eac0(UK版本11.31)

Available partitions: 1 # 可用分区数量:1个

GPU memory usage (kB): [# ] <3% system memory # GPU内存使用可视化图示,占用系统内存不到3%

Total system memory (kB): 7504160 # 系统总内存:7,504,160 KB ≈ 7.16 GB

Partition mali0: # 分区名称:mali0

Status: suspended # 分区状态:已挂起/暂停

Memory usage (kB): 30576 # 该分区GPU内存使用量:30,576 KB ≈ 29.8 MB

Running processes: # 运行中的进程列表

PID 2502: # 进程ID:2502

Command: com.usb.right:UsbFunctionSwitchExtAbility:1

Command: com.ohos.launcher

```