最近做的项目需要和Unity做交互, Unity作为一款游戏引擎, 还是很耗性能的, 所以找了找性能测试的工具, 发现了腾讯的PerfDog, 记录一下使用心得
一.查看官网说明
官网地址 https://perfdog.qq.com/
官网使用说明 https://bbs.perfdog.qq.com/article-detail.html?id=5
咱们先去看一下说明文档, 看说明文档很重要的, 会让自己少走很多弯路
-
重要说明Q&A 该链接主要是讲一系列的为什么?
Android和ios如何调试?
GPU信息查看?
电量功率查看?
性能信息, WIFI测试模式?
可仔细阅读是否有自己对应的问题 - 特殊机型指南 该链接是针对于一些低版本手机不能测试和可能会并发的问题
- 性能标准参考说明 什么是性能,性能标准多少合适, 可以在这里找到答案。
- WEB使用手册 PerfDog可以下载客户端使用, 也可以直接在官网登录后,后台直接使用, 该链接的WEB说明非常的详细, WEB使用上, 就请参考该链接吧。
二.客户端下载安装
我的是windows版本的
解压后的文件如图, 点击PerfDog.exe安装即可
需要登录才能进到perfDog的主页, 输入刚刚官网注册邮箱即可。
三.perfDog首页都有哪些东西呢?
- 板块1: 选择调试的手机设备
点击选择手机后, 会给手机安装一个PerfDog应用, 需要同意安装, 否则会安装失败 -
板块2: 安装成功后, 板块2"请选择测试应用" 会显示手机上安装的所有应用
*版本3: 手机的CPU,GPU分辨率,内存介绍
Setting,是设置FPS(帧率)、FrameTime(帧生成时间)、CPU、Network(Recv/Send,测试目标进程流量)
*板块4/板块5/板块6: 转标题四
四.perfDog种的 FPS,CPU,Memory是什么?
仔细阅读官方说明文档, 这些都有讲解到, 我自己还是简单的做了一个总结
FPS
FPS(Frames per second) 1秒内游戏画面或者应用界面真实平均刷新次数,俗称帧率/FPS。
名称 | 说明 |
---|---|
Avg(FPS) | 平均帧率(一段时间内平均FPS) |
Var(FPS) | 帧率方差(一段时间内FPS方差) |
Drop(FPS) | 降帧次数(平均每小时相邻两个FPS点下降大于8帧的次数) |
在平时玩游戏的时候, 延迟不能大于100毫秒, 否则用户的严重只剩下了卡顿, 100-300毫秒用户可以感受到延迟, 当达到一秒, 用户的注意力就会转移
Jank
1秒内卡顿次数, 帧率FPS高并不能反映流畅或不卡顿。比如:FPS为50帧,前200ms渲染一帧,后800ms渲染49帧,虽然帧率50,但依然觉得非常卡顿。同时帧率FPS低,并不代表卡顿,比如无卡顿时均匀FPS为15帧。所以平均帧率FPS与卡顿无任何直接关系)
官网提供的参考链接: 必看
名称 | 说明 |
---|---|
Jank |
1s内卡顿次数(同时满足ab,则认为一次卡顿Jank) a) 当前帧耗时>前三帧平均耗时2倍。 b) 当前帧耗时>两帧电影帧耗时(1000ms/24*2=84ms)。 |
BigJank |
1s内严重卡顿次数(同时满足ab,则认为是一次严重卡顿BigJank) a) 当前帧耗时>前三帧平均耗时2倍。 b) 当前帧耗时>三帧电影帧耗时(1000ms/24*3=125ms)。 |
Jank(/10min) | 平均每10分钟卡顿次数 |
BigJank(/10min) | 平均每10分钟严重卡顿次数 |
PerfDog Stutter | 测试过程中,卡顿时长的占比。Stutter(卡顿率)=卡顿市场/总时长 |
FTime
名称 | 说明 |
---|---|
FTime | 上下帧画面显示时间间隔,即认为帧耗时 |
Avg(FTime) | 平均帧耗时 |
Delta(FTime) | 增量耗时(平均每小时两帧之间时间差>100ms的次数) |
CPU Usage
名称 | 说明 |
---|---|
Total CPU | 整机CPU使用率 |
AppCPU | 进程CPU使用率 |
CPU Clock | 各个CPU核心的未规划频率和未规划使用率 |
CPU Clock Normalized | 各个CPU核心的规划频率和规划使用率 |
Memory
名称 | 说明 |
---|---|
Memory |
PSS Memory 统计结果和Android Java API标准结果一致,与Meminfo也一致。注:部分三星机器系统修改了Meminfo底层统计方式,导致Meminfo与Java AP统计结果不一致,新出三星机器已修复) |
Swap Memory | 部分设备支持Swap功能,在启用Swap功能后,系统会对PSS内存进行压缩,Swap增加,PSS会相应减少,由于压缩会占用CPU资源,同时相应会导致FPS降低 |
Virtual Memory(VSS) | VSS 虚拟耗用内存(包含共享库占用的内存) |
Memory Detail | NativePSS、GFX、GL、Unknown |
CTemp |
CPU温度 Battery Power(Current电流、Voltage电压、Power功耗) 注:与仪器测试误差<3%左右。 注:Sum(Battery)是耗电量。 |
GPU Usage
名称 | 说明 |
---|---|
GPU Usage |
目前仅支持部分高通芯片手机 注:Top Android GPU测试机型,参考 |
GPU Frequency | 目前仅支持部分高通芯片手机 |
Network
名称 | 说明 |
---|---|
Network(Recv/Send | 测试目标进程流量 |
五.perfDog使用
选择一个测试应用, 开始跑吧, 唰唰唰的一大批测试数据就呈现了, 同桌看到后, 问我在干嘛? 看起来这么高大上的样子, 哈哈
5.1 点击+按钮,选择需要收集性能参数,默认已经选中了一些常用的
手机小窗测试数据展示, 需给perfDog 小窗展示权限
5.2 记录保存
5.3 云端数据看板, 测试结束后, 可保存到云端, 也可以存到本地查看
本地表格记录
5.4 测试数据回放
5.5 Log日志记录
嗯, 大概就是这样的啦, 细节再补充吧!