Google插件Performance工具进行性能分析
环境准备
【匿名模式】:匿名模式可以保证Chrome在一个相对干净的环境下运行。我们安装了许多chrome插件,这些插件可能会影响我们分析性能表现。使用ctrl+shift+N即可在匿名模式下开启新的chrome新标签页。
使用performance工具进行性能分析的数据准备
进入开发者工具后,点击performance
点击录制按钮,开始录制,在对应页面进行有关操作,然后点击停止,停止录制、处理数据并生成性能报告。
分析报告
看上上述性能表现报告时,已备好性能分析的数据。那么久可以用来分析页面的性能,从而找到性能瓶颈
分析每一秒的帧
FPS(frames per second)是用来分析动画的一个主要性能指标。能保持在60的FPS的话,那么用户体验就是不错的。观察FPS图表,如果你发现了一个红色的长条,那么就说明这些帧存在严重问题,有可能导致非常差的用户体验。一般来说,绿色的长条越高,说明FPS越高,用户体验越好。
就在FPS图表下方,你会看到CPU图表。在CPU图表中的各种颜色与Summary面板里的颜色是相互对应的,Summary面板就在Performance面板的下方。CPU图表中的各种颜色代表着在这个时间段内,CPU在各种处理上所花费的时间。如果你看到了某个处理占用了大量的时间,那么这可能就是一个可以找到性能瓶颈的线索。
把鼠标移动到FPS,CPU或者NET图表之上,DevToos就会展示这个时间点界面的截图。左右移动鼠标,可以重发当时的屏幕录像。这被称为scrubbing, 他可以用来分析动画的各个细节。
在Frames图表中,把鼠标移动到绿色条状图上,Devtools会展示这个帧的FPS。每个帧可能都在60以下,都没有达到60的标准,也可能高于60,这些是结合FPS表来进行分析查看的,重点关注FPS表中较低处。
在我们实际场景中,我们也需要结合小工具进行性能分析
小功能:显示实时FPS面板
- 按下 Command+Shift+P(Mac)或者 Ctrl+Shift+P(Windows, Linux) 打开命令菜单
- 输入Rendering,点选Show Rendering
- 在Rendering面板里,激活FPS Meter。FPS实时面板就出现在页面的左上方。
关闭FPS Meter只要按下Esc就可以了。
定位瓶颈
注意Summary面板,你会发现CPU花费了大量的时间在Idle和Scripting上。因为提高性能就是一门做减法的艺术,你的目标就是减少Idle和Scripting的时间。
展开Main图表,Devtools展示了主线程运行状况。X轴代表着时间。每个长条代表着一个event。长条越长就代表这个event花费的时间越长。Y轴代表了调用栈(call stack)。在栈里,上面的event调用了下面的event。
在性能报告中,有很多的数据。可以通过双击,拖动等等动作来放大缩小报告范围,从各种时间段来观察分析报告。
在事件长条的右上角出,如果出现了红色小三角,说明这个事件是存在问题的,需要特别注意。
点击这个带有红色小三角的的事件。在Summary面板会看到详细信息。注意reveal这个链接,双击它会让高亮触发这个事件的event。如果点击了ui.dll.js:45这个链接,就会跳转到对应的代码处。
Call Tree,可以通过调用树来查看各个文件调用运行的时间及占比。
Google插件Performance工具进行性能分析相关推荐
- hadoop中使用hprof工具进行性能分析
在编写完成MapReduce程序之后,调优就成为了一个大问题.如何使用现有工具快速地分析出任务的性能? 对于本地的java应用程序,进行分析可能稍微简单,但是hadoop是一个分布式框架,MapRed ...
- 利用chromeDevTools的Performance面板进行性能分析调优
Chrome DevTools之Performance Chrome DevTools中Performance面板可以帮助我们进行性能分析,使我们写出更加精悍的代码. 下面是一段简单的代码. var ...
- 使用Websphere的TPTP工具进行性能分析和监控
Websphere提供了一个TPTP(Test & Performance Tools Platform)工具,最新版本为4.5.0,可以进行强大的性能测试和分析工具,利用它,我们可以分析ja ...
- js performance.timing:利用performance.timing进行性能分析
window.onload = function(){setTimeout(function(){let t = performance.timingconsole.log('DNS查询耗时 :' + ...
- JS - 利用performance.timing进行性能分析
window.onload = function(){setTimeout(function(){let t = performance.timingconsole.log('DNS查询耗时 :' + ...
- 前端进击笔记第二十二节 如何进行性能分析的自动化实现
如今网络速度越来越快.机器性能也越来越好,用户对于页面加载要求也随之增高,页面白屏过久.操作卡顿等问题对用户来说是无法忍受的,因此性能分析成了前端开发工作中的家常便饭. 常见的性能分析解决方案会在下一 ...
- Android如何分析native代码,使用android-ndk-profiler对native代码进行性能分析
android-ndk-profiler需要使用gcc进行编译,从NDK r13b 起NDK使用的默认编译器从gcc换成了clang,官方提供了Simpleperf工具进行性能分析,具体情况可以参考h ...
- linux c++ 函数效率,Linux C++程序进行性能分析工具gprof使用入门
性能分析工具 软件的性能是软件质量的重要考察点,不论是在线服务程序还是离线程序,甚至是终端应用,性能都是用户体验的关键.这里说的性能重大的范畴来讲包括了性能和稳定性两个方面,我们在做软件测试的时候也是 ...
- Android:通过systrace进行性能分析及使用-详细
Android:通过systrace进行性能分析 https://www.cnblogs.com/blogs-of-lxl/p/10926824.html 一.Systrace 简介 Systrace ...
最新文章
- golang中创建logger时候踩过的坑
- 真实的产品案例:实现文档边缘检测
- EmEditor 常用功能
- BAT批处理整人代码
- java生成图片中文乱码_Java生成图片乱码问题的解决方法
- 【线性代数】n阶行列式
- C++: 对称数字金字塔
- 张艾迪(创始人):世界最高级文明信仰
- 到底什么是JWT技术?
- 辅助类GenericOptionsParser,Tool和ToolRunner
- Discuz!目录结构
- mapboxgl加载google地图、高德地图的在线切片地图
- linux共享文件夹找不到
- 关于RS485通讯中使用STM32串口以DMA方式发送数据丢失字节的问题
- et99php,坚石诚信ET99加密狗api aardio调用示范
- FIR滤波器学习设计笔记
- 用计算机写作400字,电脑作文400字
- Java 18发布:甲骨文公司已开始将Java纳入其软件许可审计
- 商业地产如何走出高空置率困局?
- 102届秋季广交会参展准入管理规定 2007年广交会参展准入资质标准
热门文章
- 基于python的股票数据的读取及可视化(K线图)
- SAP disp+work dispatcher YELLOW
- cgb2107-day16
- Qt开发:Qt Widgets模块——QCompleter类
- 七牛云 QVM 「1 元上云」领取攻略 企业如何低成本上云必读
- xcode php开发工具,给宝宝的第一份礼物——一个好名字
- SGame 新加进程(1)
- C语言中的%和/的含义(超详细)
- 2计算机电源机,2分钟解读,电脑装机电源如何选?
- html表单记住密码按钮,js form表单提交,浏览器记住密码后自动填充