客户端说明书
PerfDog menu

客户端说明书

更新于: 2023-04-17 17:03

介绍:
全平台iOS/Android/PC/主机等设备性能测试、分析工具平台。快速定位分析性能问题,提升应用及游戏性能和品质。无需ROOT/越狱,硬件、游戏及应用也无需做任何修改,极简化即插即用。
PerfDog支持移动平台所有应用程序(游戏、APP应用、浏览器、小程序、小游戏、H5、后台系统进程等)、Android模拟器、云真机等性能测试。支持APP多进程测试(如Android多子进程及iOS扩展进程APP Extension)。
Windows & Mac OS X平台PerfDog桌面应用程序版本都支持对iOS和Android设备进行测试。PC上PerfDog可多开,单PC可同时测试多台手机。

重要说明Q&A:https://perfdog.qq.com/article_detail?id=10050&issue_id=0&plat_id=1

特殊机型指南:https://perfdog.qq.com/article_detail?id=10049&issue_id=0&plat_id=1

性能参考标准说明:https://perfdog.qq.com/article_detail?id=10085&issue_id=0&plat_id=1

WEB使用手册:https://perfdog.qq.com/article_detail?id=10087&issue_id=0&plat_id=3

PerfDogService(自动化及云测性能服务):https://perfdog.qq.com/perfdogservice

深度分析说明文档:https://perfdog.qq.com/article_detail?id=10206&issue_id=0&plat_id=1

Windows说明文档:https://perfdog.qq.com/article_detail?id=10224&issue_id=0&plat_id=1

Switch说明文档:https://perfdog.qq.com/article_detail?id=10223&issue_id=0&plat_id=1

安装及运行:
步骤1:登录PerfDog官网https://perfdog.qq.com/,根据您的PC平台选择想要下载的桌面应用程序
2:USB连接手机,自动检测添加手机到应用列表中。
iOS:则即插即用,用户无需做任何操作。若PerfDog检测不到连接手机或无法测试,请先安装确保最新itunes是否能连上手机(最新itunes可在QQ管家上直接下载安装)。
备注1:若iOS手机系统为16,请在使用PerfDog客户端前提前开启“开发者模式”,开启方式请参考:https://perfdog.qq.com/article_detail?id=10212&issue_id=0&plat_id=1
备注2:若无法使用请参考:https://perfdog.qq.com/article_detail?id=10050&issue_id=0&plat_id=1

    Android:有两种模式,非安装模式和安装模式。(注:请开启手机USB调试模式及允许USB应用安装。)。

        a.   非安装模式:

手机即插即用,无需任何设置及安装,使用非常简单,但手机屏幕上没有实时性能数据显示。

        b.   安装模式:

需要在手机上自动安装PerfDog.apk,手机屏幕上有实时性能数据显示(允许USB应用安装和PerfDog悬浮窗管理权限),启动PC版PerfDog.exe,则会在手机上自动PUSH安装PerfDog.apk,具体安装类似各个手机厂商安装第三方APP提示安装即可。(注:由于很多手机安装需要账号密码,导致无法自动安装,如果自动安装失败,则会把安装文件PerfDog.apk释放到当前文件夹里,手动安装PerfDog.apk即可)。此模式下,在测试过程中,可能由于系统资源紧缺会kill PerfDog显示app(手机界面性能数据显示),但不影响正常测试功能。

备注:若无法使用请参考:https://perfdog.qq.com/article_detail?id=10050&issue_id=0&plat_id=1

步骤3:测试模式

1.png

USB模式测试:
         USB连线后,在设备列表选择USB图标设备进行USB模式测试

WIFI模式测试(测试功率):
只能在WIFI模式测试功率等信息。USB连线后,在设备列表选择WIFI图标设备进行WIFI模式测试。WIFI检测连接成功后,拔掉USB连接线。(注:需要PC和被测手机连接同一WIFI,WIFI检测连接成功后,拔掉被测手机USB线(USB模式测试功率无任何意义,会充电))(备注:一般公司WIFI可能做了安全策略限制,导致iOS平台在公司WIFI下无法使用)

步骤4:选择测试的游戏&应用开始测试

        PC如图:

2.png

    Android平台,安装模式下,手机屏幕左上角有实时性能数据显示(Android手机请打开PerfDog悬浮窗管理权限,否则手机上不会显示性能参数)

3.png

软件性能数据介绍
iOS平台(苹果官方Xcode工具参数对齐。注:iOS系统对进程性能参数做严格限制,超过限制则会被系统kill)
ScreenShot(只支持USB模式,注:部分机型截图影响性能)
FPS(1秒内游戏画面或者应用界面真实平均刷新次数,俗称帧率/FPS)
1) Avg(FPS):平均帧率(一段时间内平均FPS)

    2)  Var(FPS):帧率方差(一段时间内FPS方差)

    3)  Drop(FPS):降帧次数(平均每小时相邻两个FPS点下降大于8帧的次数)

    4)Std(FPS):帧率标准差(一段时间内FPS标准差)

 注:iOS手机WiFi模式下,只支持到60帧

Jank(1s内卡顿次数。iOS9.1以下系统暂时不支持。类似Android的Jank卡顿和iOS的FramePacing平滑度统计原理。帧率FPS高并不能反映流畅或不卡顿。比如:FPS为50帧,前200ms渲染一帧,后800ms渲染49帧,虽然帧率50,但依然觉得非常卡顿。同时帧率FPS低,并不代表卡顿,比如无卡顿时均匀FPS为15帧。所以平均帧率FPS与卡顿无任何直接关系)
参考:https://perfdog.qq.com/article_detail?id=10162&issue_id=0&plat_id=1

    PerfDog Jank计算方法:

    1.      同时满足以下两条件,则认为是一次卡顿Jank.

        a)      当前帧耗时>前三帧平均耗时2倍。

        b)      当前帧耗时>两帧电影帧耗时(1000ms/24*2=84ms)。

    2.      同时满足两条件,则认为是一次严重卡顿BigJank.

        a)      当前帧耗时>前三帧平均耗时2倍。

        b)      当前帧耗时>三帧电影帧耗时(1000ms/24*3=125ms)。

    1)      BigJank:1s内严重卡顿次数

    2)      Jank(/10min):平均每10分钟卡顿次数。

    3)      BigJank(/10min):平均每10分钟严重卡顿次数

SmallJank(微小卡顿,在Jank基础上对细微的卡顿进行捕捉)
Smooth(稳帧指数,可对游戏或者应用画面平稳度更精准的评估,一般游戏、视频建议<8,应用类APP(滑动时)建议<20)
Stutter(测试过程中,卡顿时长的占比)
FTime(上下帧画面显示时间间隔,即认为帧耗时,iOS9.1以下系统暂时不支持)
1) Avg(FTime):平均帧耗时

    2)  Delta(FTime):增量耗时(平均每小时两帧之间时间差>100ms的次数)

    3)Std(FTime):帧耗时标准差

    4)Var(FTime):帧耗时方差

CPU Usage(TotalCPU表示整机CPU使用率,AppCPU表示进程CPU使用率,统计结果和Xcode一致,PerfDog使用率=Xcode使用率/核心数。备注:iOS平台CPU Usage是未规范化CPU使用率,请参考https://perfdog.qq.com/article_detail?id=10088&issue_id=0&plat_id=1)
Memory (是统计FootPrint,注:OOM与FootPrint有关,与系统、机型无关。只与RAM有关,如1G内存机器。FootPrint超过650MB,引发OOM)。注:PerfDog暂时在iOS9、10系统无法获取,其他版本ok。后续版本增加。如做性能测试,建议升级iOS系统版本
Xcode Memory (XCode Debug gauges统计方式即XCode Memory)。注:iOS9、10系统暂时无法获取,其他版本ok。后续版本增加。如做性能测试,建议升级iOS系统版本
Real Memory(Xcode Instrument统计方式即Real Memory,实际占用物理内存。注:物理内存系统策略有关,衡量内存指标时不会关注,但是它有助于分析定位整体性能问题。比如:footprint没有降低,说明应用没有释放内存,但是real memory却降低了,说明系统对内存做了压缩。由于压缩会占用CPU资源,同时相应会导致FPS降低)
Virtual Memory(虚拟内存)
Available Memory(整机可用剩余内存)
Wakeups(线程唤醒次数。注:超过150进程很大可能会被系统kill。a sleep/wake cycle on each thread per second,Exceeding limit of 150 wakeups per second over 300 seconds,特别是iOS13.2闷杀后台进程事件,建议重点关注)
CSwitch(上下文切换测试。注:单核超过14000进程会被系统Kill。Context Switch Limit 14000(Core/Second)
GPU Utilization

  1.  Render:渲染器利用率(像素着色处理阶段,若占比高,说明是PS阶段出现瓶颈,shader过于复杂或纹理大小、采样复杂等)
    
  2.  Tiler: Tiler利用率(顶点着色处理阶段,若占比高,说明是VS阶段出现瓶颈,顶点数太多等原因)
    
  3.  Device:设备利用率(整体GPU利用率)
    

GPU Counter(仅USB模式)
支持iOS全量GPU Counter,与Instrument一致

   iOS GPU Counter名词具体参考:https://perfdog.qq.com/article_detail?id=10193&issue_id=0&plat_id=1

iOS GPU Counter兼容列表,请参考:https://perfdog.qq.com/article_detail?id=10198&issue_id=9&plat_id=1

Network(Recv/Send,测试目标进程流量)
BTemp(电池温度)
Battery Power(仅WIFI模式,整机实时Current电流、Voltage电压、Power功耗)(注:20s获取一次,目前最精准的统计方式,结果和Battery life结果一致,支持所有iOS机型)
注:Sum(Battery)是耗电量。

Energy Usage(即为Xcode Energy Impact。监控应用使用的能耗情况(包括CPU、GPU、NetWork、Location、Display (iPhone X only)、Overhead)。(注:和Xcode Energy Impact结果一致。有线模式下测试,支持iOS9及以上系统。Total Energy<=270为Low,270<Total Energy<=1000为High,Total Energy>1000为Very High)。
注:Display在iPhone非全面屏机型会遇到为0的情况

参考:https://help.apple.com/xcode/mac/11.0/index.html?localePath=en.lproj#/devf7f7c5fcd

Log日志采集(WIFI模式下,不支持Log收集)
Android平台
ScreenShot(只支持USB模式,注:部分机型截图影响性能)
FPS(1秒内游戏画面或者应用界面真实平均刷新次数,俗称帧率/FPS)

  1. Avg(FPS):平均帧率(一段时间内平均FPS)

  2. Var(FPS):帧率方差(一段时间内FPS方差)

  3. Drop(FPS):降帧次数(平均每小时相邻两个FPS点下降大于8帧的次数)

    4)Std(FPS):帧率标准差(一段时间内FPS标准差)

备注:高阶FPS功能-Android窗口与FPS

请参考:https://perfdog.qq.com/article_detail?id=10081&issue_id=0&plat_id=1

InterFrame(部分机型具有动态补帧/插帧技术,此参数可真实反映1秒内插入的帧数)
Screen Resolution(屏幕分辨率,获取教程可参考:https://perfdog.qq.com/article_detail?id=10194&issue_id=0&plat_id=1)
Jank(1S内卡顿次数。解释说明如iOS平台说明)

  1.  BigJank:1s内严重卡顿次数
    
  2.  Jank(/10分钟):平均每10分钟卡顿次数。
    
  3.  BigJank(/10分钟):平均每10分钟严重卡顿次数
    

SmallJank(微小卡顿,在Jank基础上对细微的卡顿进行捕捉)
Smooth(稳帧指数,可对游戏或者应用画面平稳度更精准的评估,一般游戏、视频建议<8,应用类APP(滑动时)建议<20)
Stutter(测试过程中,卡顿时长的占比)
FTime(上下帧画面显示时间间隔,即认为帧耗时)

  1. Avg(FTime):平均帧耗时

  2. Delta(FTime):增量耗时(平均每小时两帧之间时间差>100ms的次数)

    3)Std(FTime):帧耗时标准差

    4)Var(FTime):帧耗时方差

CPU Usage(传统CPU利用率,也叫未规范化CPU利用率,TotalCPU表示整机未规范化CPU使用率,AppCPU表示进程未规范化CPU使用率。备注:统计结果和Android Studio Profiler一致。具体参考https://perfdog.qq.com/article_detail?id=10088&issue_id=0&plat_id=1)
CPU Usage (Normalized)(规范化CPU利用率,TotalCPU表示整机规范化CPU使用率,AppCPU表示进程规范化CPU使用率。备注:建议参考规范化CPU利用率,性能参考更精准。具体参考https://perfdog.qq.com/article_detail?id=10088&issue_id=0&plat_id=1)
CPU Clock(各个CPU核心的未规范化频率和未规范化使用率)
Memory (PSS Memory,统计结果和Android Java API标准结果一致,与Meminfo也一致。注:部分三星机器系统修改了Meminfo底层统计方式,导致Meminfo与Java AP统计结果不一致,新出三星机器已修复)
Swap Memory (Swap Memory,部分设备支持Swap功能,在启用Swap功能后,系统会对PSS内存进行压缩,Swap增加,PSS会相应减少,由于压缩会占用CPU资源,同时相应会导致FPS降低)
Virtual Memory(VSS)
Available Memory(整机可用剩余内存)
Memory Detail(NativePss、Gfx、GL、Unknown、Dalvik Heap、Dalvik Other、Stack、Cursor、Ashmem、Other dev、.so mmap、.jar mmap、.apk mmap、.ttf mmap、.dex mmap、code mmap、image mmap、Other mmap、Graphics、Memtrack、.oat mmap、.art mmap、EGL mtrack、Other mtrack)

注:在极限测试情况下,例如开启游戏超高帧率,建议不要勾选收集Memory Usage和Memory Detail,因为较少部分的低端机型会有性能损耗。

GPU Usage(目前仅支持部分手机)。注:Top Android GPU测试机型,请参考:https://perfdog.qq.com/article_detail?id=10101&issue_id=0&plat_id=1
GPU Frequency(目前仅支持部分手机)。
GPU Counter按不同架构支持:
支持高通全量GPU Counter,与Snapdragon一致

支持Mali全量GPU Counter,与Streamline一致,官方名词解释请参考:https://developer.arm.com/documentation/102697/0102/GPU-activity?lang=en

支持PowerVR部分GPU Counter,与PVRTune一致,官方名词解释请参考:https://docs.imgtec.com/tools-manuals/pvrtune-manual/topics/counters/counter-list.html

Network(Recv/Send,测试目标进程流量)(注:USB/WiFi测试模式下均为APP数据)
CTemp(CPU温度)
GTemp(GPU温度)
BTemp(电池温度)
NTemp(NPU温度)
Battery Power(仅WIFI模式,整机Current电流、Voltage电压、Power功耗)(注:与仪器测试误差<3%左右)。注1:Sum(Battery)是耗电量。注2:对于已经兼容的双电机型,可参考:https://perfdog.qq.com/article_detail?id=10047&issue_id=0&plat_id=1,未兼容设备可以电流x2进行容错。
FPower(帧能耗)

Log日志采集(WIFI模式下,不支持Log收集)
Web性能数据管理:
账户信息管理
性能数据管理、图表展示、编辑、大版本对比
性能数据统计、分析及多维度对比等
性能测试任务管理
软件功能介绍:
1. 性能参数控制Page:

    点击”+ ”按钮,选择需要收集性能参数,控制性能参数显示page

4.png

2.      记录保存:

5.png

    测试结束时,可自主选择两种方式保存处理(Upload/Save)性能数据:

    1)   将性能数据同步上传PerfDog云端web看板

6.png

7.png

    2)  本地导出Excel文件

8.png

3.      记录回放(方便回看分析):

    打开要回放文件

9.png

    回放结果如图:

10.png

4.      批注及标定(鼠标左键双击,则批注。左键双击已生成的批注,则取消。鼠标左键单击,则标定):

11.png

5.      设定性能参数统计分析阈值、编辑统计参数分析及框选记录保存(对齐TDR标准):

    可以通过鼠标框选/拖动查询时间周期内,统计数据等。同时可对框选数据进行保存。右边可以设定对应的性能参数统计分析阈值等。

12.png

6.      场景Label标签:

    通过标签按钮给性能数据打标签,鼠标左键双击颜色区域可修改对应区域标签名

13.png

7.      屏幕记录:

    注:截屏记录开启,影响性能

8.      多进程测试。

iOS平台,APP多进程分为APP Extension和系统XPC Server。

比如:某电竞直播软件用到APP Extension扩展进程(扩展进程名LABroadcastUpload)。当然也可能用到系统XPC Server服务进程,如一般web浏览器会用到webkit。

Android平台,一般大型APP,比如游戏有时候是多进程协作运行(微信小游戏,微视等APP及王者荣耀等游戏多子进程),可选择目标子进程进行针对性测试。默认是主进程。如图王者荣耀

Android如何测试微信小游戏&小程序:https://perfdog.qq.com/article_detail?id=10082&issue_id=0&plat_id=4

iOS如何测试微信小游戏&小程序:https://perfdog.qq.com/article_detail?id=10080&issue_id=0&plat_id=4

14.png

微信小游戏、小程序测试等,如下是微信小游戏-浪漫玫瑰园

15.png

   备注:子程序进程名高亮显示,表示当前子进程处于顶层。

9. FPS高阶功能(Android平台):

满足高级用户更精准测试窗口帧率(游戏、小游戏、小程序、直播、视频类、web等所有应用都适用)。

请参考:https://perfdog.qq.com/article_detail?id=10081&issue_id=0&plat_id=1

10. 深度分析功能(内部灰度):

     从CPU的调度和使用,到线程的运行状态,再到调用堆栈,以及渲染截图等。找出卡顿元凶,进行代码级别优化,说明文档:https://perfdog.qq.com/article_detail?id=10206&issue_id=0&plat_id=1

16.png

11.  Log日志功能:

采集系统日志信息。

17.png

12. 停止测试:

无需拔手机,点击停止测试按钮即可停止采集数据。

18.png

13.  自定义数据文件服务器地址,构建自己web云:

可修改数据文件服务器上传地址。Post上传http协议格式文件至自己服务器地址。

19.png

参考说明及Demo: https://perfdog.qq.com/article_detail?id=10094&issue_id=0&plat_id=1

14.  命令行快捷输入面板:

使用教程可参考:https://perfdog.qq.com/article_detail?id=10195&issue_id=0&plat_id=1

20.png

  1. 侧边栏收缩:

单击折叠按钮即可折叠左侧信息栏,再次点击即可恢复

21.png

  1. MemReport功能(支持Unreal引擎的Dev版本):点击右上角“MemReport”按钮,即可获取当前时间点MemReport数据

22.png

双击MemReport标签,弹出MemReport对话框

23.png

MemReport报告样式:

24.png

25.png

Web云平台功能介绍:

1.      个人性能数据MyData。

26.png

具体性能数据展示。

27.png

2.      测试任务管理

    创建任务邀请测试成员加入,或加入其他人创建的测试任务中。

28.png

3.      性能数据共享归纳

29.png

4.      测试任务性能数据Task Data

30.png

5.      数据报告隐私分享

31.png

    访问别人分享链接即可查看数据报告:

    https://perfdog.qq.com/case_detail/367665   Password: xs2BPa

6.      Case报告多维度对比(详情、机型、版本、比例、区间、趋势、拖拉缩放等)。

32.png

比例、区间、趋势、拖拉缩放等对比(鼠标左右拖动性能曲线)

33.png

购买
客服
反馈