性能

GPU 过度绘制专项测试工具

一款基于设备截屏和图像颜色占比分析的桌面端 GPU 过度绘制观察工具,用于实时显示过度绘制比例、当前页面并保存超阈值截图。

Windows 桌面端;被测端支持通过 ADB 连接的 Android 设备,以及通过 HDC 连接的 HarmonyOS/OpenHarmony 类设备。 RAR 登录后下载 83.0 MB

工具介绍

GPU 过度绘制专项测试工具通过 ADB 或 HDC 建立设备截屏链路,将当前画面保存为本地图片,并调用项目内 DLL 计算特定颜色区域占比,形成 GPU 过度绘制比例。界面支持 0.5s/1s 刷新、阈值配置、可选包名过滤、实时画面预览和 Activity 记录;当比例达到阈值时,工具会保存截图到 overdraw 目录。该工具依赖设备侧开发者选项中的 GPU 过度绘制显示,不是底层 GPU profiler,也不提供性能根因分析。

核心能力

过度绘制比例

基于本地截图调用 DLL 计算颜色占比,并以百分比显示过度绘制结果。

实时画面与 Activity

采集设备当前画面并同步记录前台 Activity,支持按包名过滤非目标页面。

阈值截图留存

当过度绘制比例达到配置阈值时,自动复制截图到 overdraw 目录。

适用测试场景

  • 在页面走查时实时观察过度绘制比例,发现绘制压力较高的页面。
  • 按 0.5s 或 1s 刷新频率监控指定应用包名的前台页面。
  • 设置过度绘制阈值,并自动保存达到阈值的截图到 overdraw 目录。
  • 同时查看实时设备画面、GPU 过度绘制比例和当前 Activity。

环境与依赖

运行平台
Windows 桌面端;被测端支持通过 ADB 连接的 Android 设备,以及通过 HDC 连接的 HarmonyOS/OpenHarmony 类设备。
系统范围
Android 端通过 ADB/scrcpy 服务采集截图;HDC 端通过 harmonyscrcpy/uitest 路径采集截图。代码包含 Android API 与 ABI 读取逻辑,但未声明明确系统版本范围。
接入方式
通过 PyQt5 图形界面启动;可设置刷新频率、过度绘制比例阈值,并可选填需要监控的应用包名。
工具包
GpuTool.rar

权限与依赖

  • PC 端需要 Python/PyQt5、adb 或 hdc、随项目提供的 scrcpy/harmonyscrcpy 资源,以及 lib/dll 下的图像分析 DLL。
  • Android 设备需要允许 ADB 调试、文件 push、端口转发和启动 app_process scrcpy 服务。
  • HDC 设备需要允许 hdc file send、fport、uitest start-daemon 和相关 shell 命令。
  • 被测设备需要进入开发者模式并打开 GPU 过度绘制显示开关。

支持范围与说明

明确支持

  • package.py 明确支持 gpu 打包入口,对应 GPUGui.py。
  • GPUGui.py 要求进入开发者模式并打开 GPU 过渡绘制开关。
  • GPUGui.py 支持 0.5s 和 1s 刷新频率、过度绘制阈值、可选包名过滤和实时图像显示。
  • Android 路径使用 support.scrcpy,HDC 路径使用 support.harmonyscrcpy。
  • overdraw() 调用 dll.GetRColorRatio 计算 ./tmp/placeholder.jpg 的颜色占比。
  • 达到阈值时会将截图复制到 ./overdraw/。

合理推断

  • 过度绘制比例的含义取决于设备开启 GPU 过度绘制显示后的颜色渲染结果。
  • 截图链路依赖 scrcpy/harmonyscrcpy 服务和端口转发,设备策略可能影响可用性。
  • 通过实时截屏与颜色占比分析呈现过度绘制比例,结果与设备开发者选项中的过度绘制可视化直接相关。
  • 同时支持 Android ADB/scrcpy 与 HDC/harmonyscrcpy 两类截屏通道。
  • 超阈值截图会自动留存,方便测试后回看具体页面状态。

下载与使用说明

工具包
RAR
大小
83.0 MB
更新时间
2026-05-22
下载
登录后下载

工具以本地运行和真实 QA 工作流为前提设计,适合安卓 App 专项测试,不依赖外部测试平台。

下载 RAR