`

帧率测试

阅读更多

 

 1、GPU概念

          GPU(Graphic Process Unit):图形处理器,又称显示核心,视觉处理器。是一种专门运算图像的微处理器。显卡的处理器称为图形处理器。它是显示的“心脏”。

2、为什么要进行帧率测试(FPS)

       帧率测试:也叫流畅度测试,主要是测试图像,视频的性能。在无线测试领域中,尤其是游戏类的App,对图像处理速度更为关注。帧率过大,对于部分低配置的测试机来说,会产生大量的热量,导致测试机过烫;如果帧率过低,会导致很不流畅,体验比较差。

 

     在移动设备中,FPS(Frame Per Second)达到每秒60帧以上,人眼主观感受到的差别就不大。FPS太高了反而会产生大量的热量导致移动设备发烫。所以以FPS为60为标准,即每一帧刷新的时间<=16ms,这样才能保证滑动的流畅度。

 

3、帧率测试操作步骤

      1)进入手机的“设置”-->进入“开发人员选项”-->选上“GPU显示配置文件”

      2)  重启被测App,对App进行操作

      3)  运行命令: adb shell dumpsys gfxinfo apk_name>file_name.txt

      4)打开file_name.txt,找到profile data in ms这部分数据

      5)把这部分数据导出到excel中形成图

 

备注:

     1)gfxinfo是在android4.1以上才有此命令

4、帧率测试结果分析

      1)Draw + Process + Execute是一帧的绘制+渲染的时间。如果时间超过16ms,则用户会明显感知卡顿

      2)"Draw":创建显示列表的时间(display list,记录所有View对象)

      3)  “Process”:用于显示列表的时间(界面渲染时间。html5主要是调用CSS进行渲染;native主要是调用             AndroidManifest.xml/Activity里的代码来进行渲染)

      4)"Execute":将一帧图交给合成器的时间,这部分时间通常比较少

备注:

     1)可以使用Systrace工具对卡顿问题进行定位和分析

  5、HTML5页面渲染原理

       一个html网页载入的大概过程:

       a、用户输入网址,浏览器向服务器发送请求,服务器返回html文件

       b、浏览器开始载入html的代码,发现head标签有一个link标签引用外部的CSS文件,此时会发出CSS文件,服务器会返回CSS请求

       c、浏览器继续载入<body>里面的代码,并且CSS代码拿到手开始渲染界面

       d、浏览器在代码中发现<img>标签引用了一张图片地址,此时向服务器发起请求,浏览器不会等到图片下载完而是继续渲染后面的代码

       e、服务器返回图片文件,由于图片占据了一定的面积,影响了后面的排版,因此浏览器又要重新渲染这部分代码浏览器发现了一行js代码<script>并立即他,js会影响到相应的标签渲染

       js阻塞特性:其中js是阻塞式的加载,浏览器在加载js时不会做其他的事情。即<script>每次出现都会让页面等待脚本的解析和执行,js执行完成后才会加载后才会渲染页面。

6、提高HTML渲染速度方法

       1)把js写在页面的底部

       2)js使用高效的选择器

       3)  将选择器保存为局部变量

       4)  先操作再显示。(如滑屏时,等完滑屏结束后再显示手指所停留的那一页界面)

分享到:
评论

相关推荐

    fraps帧率测试软件

    fraps是著名测帧率的工具,简单好用,功能强大

    android帧率测试

    android帧率测试,源码,测试apk的刷新率。

    APP界面帧率测试结果

    寄存器(Registers):速度最快的存储场所,因为寄存器位于处理器内部,我们在程序中无法控制 栈(Stack):存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中 堆(Heap):堆内存用来存放...

    FpsService-帧率测试.rar

    FpsService-帧率测试.rar

    视频帧率&码率测试方法说明文档

    介绍视频的帧率和码率如何测试的一个说明文档

    JavaScript应用实例-截图帧率测试.js

    JavaScript应用实例-截图帧率测试.js

    AutoJs源码-截图帧率测试

    AutoJs源码-截图帧率测试。本资源购买前提醒:本源码都是实际autojs项目模板,安装好autojs直接运行即可打开。1、支持低版本autojs。2、资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您自己承担!...

    Fraps_测试工具_测试帧率

    一款在图形学相关开发、游戏开发时测试场景性能的工具,主要用来查看帧率。已经测过,非常好用

    相机显示,帧率测试软件,labview2015

    使用labview2015编译生成的简单测试软件,用于打开相机查看实时拍摄内容,显示当前帧率。需要labview2015的运行库才可运行,需要NI VIsion development Module的运行库支持。

    (Mac/Linux版)Android实时显示帧率(GameBench)

    android帧率可以通过adb shell dumpsys gfxinfo packages来查看,但是需要分析log,这种特别麻烦,分享一个免root获取帧率工具。注意:.jar文件在PC上运行。

    CANoe通过CAPL脚本实现自动测试

    现在汽车行业用vector的工具进行自动测试,但是该自动测试模板很少,本案例是分享CAPL脚本自动化测试的模板,和自动控制测试步骤的XML模板,使用过程可以通过本人分享的文档来实现工程的建立到自动测试的完成。...

    1080_60fps_测试视频.mp4

    一个用来测试用的视频,视频信息:1080P(分辨率1920*1080),60fps的帧率,h264+MP3编码处理,MP4封包格式,正常情况下可以流畅播放。

    AMCap 摄像头测试工具

    AMCap.exe用于检测摄像头性能,能自主选择分辨率、帧率、格式等属性进行测试。 经常用于: 比较摄像头优劣 检测摄像头能力集 检测摄像头是否损坏

    帧速测试软件

    一款可以测试帧速的软件,不用在寻找啦,就是这个。 按下F11开启/关闭fps显示 按下F9开启/关闭 视频录制 按下F10开启 屏幕截图 还可以选择图片格式哦

    系统鼠标测试软件 好东东

    好不容易捣腾到的鼠标测试软件 好东东

    amcap测试帧率.exe

    基于DirectShow的AMCap修改,显示图像实时帧率,运行时间及采集图像帧数。 应用工具读取摄像头采集的图像

    基于yolov5的C++单目摄像头测距

    使用说明 模型转换 yolov5工程下export.py转换onnx,直接转,切忌修改batch_size 参考网上方法,rknn-toolkit2进行onnx转rknn ...多线程模型帧率测试 使用performance.sh进行CPU/NPU定频尽量减少误差

    rk3588rk3588s使用c++多线程异步等优化c++实现源码(yolov5运行可达到135fps)+项目使用说明.zip

    rk3588rk3588s使用c++多线程异步等优化c++实现源码(yolov5运行可达到135fps)+项目使用说明.zip 【资源介绍】 该项目为c++实现, 大体改自rknpu2 使用线程池异步操作...多线程模型帧率测试 更多详细介绍请看说明文档!

    使用python多线程异步提高模型部署到rk3588NPU使用率-python源码+项目使用说明.zip

    使用python多线程异步提高模型部署到rk3588NPU使用率_python...多线程模型帧率测试 使用performance.sh进行CPU/NPU定频尽量减少误差 测试模型为yolov5s_relu_tk2_RK3588_i8.rknn 【备注】更多详细介绍请看说明和代码!

    easy-capture 屏幕工具

    easy-capture这个工具支持win7,win10,win11...帧率监控可应用游戏帧率监控,视频渲染帧率监控,远程桌面帧率测试等,屏幕录制同时可用于网课视频录制,游戏视频录制等,截图和标注可以在日常工作图片分享,图片交流等

Global site tag (gtag.js) - Google Analytics