首页 > 其他分享 >详解谷歌浏览器 performance 选项卡

详解谷歌浏览器 performance 选项卡

时间:2022-11-21 14:13:15浏览次数:57  
标签:表示 浏览器 选项卡 时间 时间轴 GPU performance 绘制 加载

本文要点

详细介绍谷歌浏览器 performance 选项卡的各个指标,让你知道如何查看网页性能。

谷歌浏览器版本为:79.0.3945.117(正式版本) (64 位)。

性能分析操作流程
1.在谷歌浏览器调式模式下,切换到 performance 选项卡。点击刷新图标(或者Ctrl+Shift+E快捷键)。

2.出现如下网页分析进度条。

3.自动停止后,会出现性能分析图。
注意点1:需要勾选屏幕快照选项,才会出现如下屏幕快照截图(一般是默认勾选)。

注意点2:整个分析图出现的时间轴就是前面步骤中分析进度条的时间,而默认出现的区域时间轴是首屏加载时间。

如图所示:
(1)以上红色框出的部分(也是整个时间轴)就是前面分析进度条的分析时间。
(2)以上绿色框出的部分是首屏加载时间。
(3)首屏加载时间刻度与选项卡 SummaryTotal 总时间一致。
(4)如下图可通过左右边界来调整时间轴区域。时间轴区域 2 是 时间轴区域 1 的放大版,便于查看时间轴区间的各项指标性能情况。

性能分析图详解

如下所示,把整张分析图划分成 3 个区域。

区域1:网页性能总览图
总览图包含 FPS(每秒帧数情况)CPU(CPU占用情况)NET(网络资源情况)HEAP(JS占用情况)一共四项指标。

FPS:全称 Frames Per Second,表示每秒传输帧数,是速度单位,用来分析动画的一个主要性能指标。1fps = 0.304 meter/sec(米/秒)。如下图所示,绿色竖线越高,FPS 越高。 红色表示长时间帧,可能出现卡顿。

如果能够达到 >=60fps(帧)/s 的刷新频率,就可以避免出现卡顿。
尽量保证页面要有高于每秒60fps(帧)的刷新频率,这与大多数显示器的刷新率相吻合(60Hz)。如果网页动画能够做到每秒60帧,就会跟显示器同步刷新,达到最佳的视觉效果。

这意味着,一秒之内进行 60 次重新渲染,每次重新渲染的时间不能超过1/60=0.01666s(秒);0.01666s*1000=16.66ms(毫秒)。

不同帧的体验:
帧率能够达到 50 ~ 60 FPS 的动画将会相当流畅,让人倍感舒适;
帧率在 30 ~ 50 FPS 之间的动画,因各人敏感程度不同,舒适度因人而异;
帧率在 30 FPS 以下的动画,让人感觉到明显的卡顿和不适感;
帧率波动很大的动画,亦会使人感觉到卡顿。

CPU:CPU 资源。此面积图指示消耗 CPU 资源的事件类型。
下图中颜色分别为(与数据统计中的颜色数据表示一致):
蓝色(Loading):表示网络通信和 HTML 解析时间。
黄色(Scripting):表示 JavaScript 执行时间。
紫色(Rendering):表示样式计算和布局(重排)时间。
绿色(Painting):表示重绘时间。
灰色(other):表示其它事件花费的时间。
白色(Idle):表示空闲时间。

NET:每条彩色横杠表示一种资源。横杠越长,检索资源所需的时间越长。 每个横杠的浅色部分表示等待时间(从请求资源到第一个字节下载完成的时间)。

HEAP:JavaScrip 执行的时间分布。

区域2:各项指标的区块图

1.Network:表示每个服务器资源的加载情况。

2.Frames:表示每幅帧的运行情况。

3.Timings:上图中有 4 条虚线,分别表示如下。
(1)DCL(DOMContentLoaded)表示 HTML 文档加载完成事件。当初始 HTML 文档完全加载并解析之后触发,无需等待样式、图片、子 frame 结束。作为明显的对比,load 事件是当个页面完全被加载时才触发。
(2)FP(First Paint)首屏绘制,页面刚开始渲染的时间。
(3)FCP(First Contentful Paint)首屏内容绘制,首次绘制任何文本,图像,非空白canvas 或 SVG 的时间点。
(4)FMP(First Meaningful Paint)首屏有意义的内容绘制,这个“有意义”没有权威的规定,本质上是通过一种算法来猜测某个时间点可能是 FMP。有的理解为是最大元素绘制的时间,即同LCP(Largest Contentful Paint )。
其中 FPFCPFMP 是同一条虚线,三者时间不一致。比如首次渲染过后,有可能出现 JS 阻塞,这种情况下 FCP 就会大于FP。
(5)L(Onload)页面所有资源加载完成事件。
(6)LCP(Largest Contentful Paint )最大内容绘制,页面上尺寸最大的元素绘制时间。

4.Main:表示主线程。
合成线程主要负责:
Javascript 的计算与执行;
CSS 样式计算;
Layout 布局计算;
将页面元素绘制成位图(paint),也就是光栅化(Raster);
将位图给合成线程。

5.Raster:光栅化(处理光栅图,即位图)。

6.GPU:表示 GPU 占用情况。

7.Chrome_childIOThread:子线程。

8.Compositor:合成线程。
合成线程主要负责:
将位图(GraphicsLayer 层)以纹理(texture)的形式上传给 GPU;
计算页面的可见部分和即将可见部分(滚动);
CSS 动画处理;
通知 GPU 绘制位图到屏幕上。

JS Heap:表示 JS 占用的内存大小。
Documents:表示文档数。
Nodes:表示 Node 节点数。
Listeners:表示监听数。
GPU Memory:表示 GPU 占用数。
下面的 4 条折线图是以上 4 个指标(没有 GPU 消耗)对应的时间消耗的内存大小与节点数量。若将某项指标前面的勾选去掉则不会出现对应的折线。
注意这个折线图只有在点击 Main 主线程的时候才会有,选择其他的指标时折线图区域时空白。

区域3:数据统计与汇总

Summary:表示各指标时间占用统计报表;
Bottom-Up:表示事件时长排序列表(倒序);
Call tree:表示事件调用顺序列表;
Event Log:表示事件发生的顺序列表;

Loading 事件:

Scripting 事件:

Rendering 事件:

Painting事件:

标签:表示,浏览器,选项卡,时间,时间轴,GPU,performance,绘制,加载
From: https://www.cnblogs.com/Sultan-ST/p/16911239.html

相关文章

  • mysql中performance_schema(一)配置篇
    背景   performance_schema最早在MYSQL5.5中出现,而现在5.6,5.7中performance_schema又添加了更多的监控项,统计信息也更丰富,真乃DBA童鞋进行性能诊断分析的福音。 检查......
  • fastdfs上传图片后浏览器访问报错Failed to load resource: net::ERR_SSL_PROTOCOL_ER
      最近在学习fastdfs时遇到了一个困扰我数小时的问题,结果很感人,特在此记录下来,也是为了让其他小伙伴们避坑  (这里我的fastdfs运行环境是在docker中)事情是这样的,用......
  • mysql中performance_schema(三) 实践篇
     背景前一篇文章我们分析了performance_schema中每个表的用途,以及主要字段的含义,比较侧重于理论的介绍。这篇文章我主要从DBA的角度出发,详细介绍如何通过performance_schem......
  • 解密-利用Masterkey离线导出Chrome浏览器中保存的密码
    利用Masterkey离线导出Chrome浏览器中保存的密码快速说明需要浏览器LoginData文件和lsass进程的内存文件步骤一获得目标LoginDatacopy%LocalAppData%\Googl......
  • chrome浏览器 开发者工具F12中某网站的sources下的源码如何批量保存
    1.常用保存Sources源码的两种方法1.1单个文件直接右键另存为1.2单个页面保存网页,就会把引用到的所有文件下载下来如果页面很多,文件也很多,静态资源也很多,那么得一个一个去......
  • Edge浏览器额外功能
    1.在百度文库没法复制的时候,网址前面添加:read://或http://read://即可进入阅读模式,然后任意复制。2.将Edge浏览器提升为多线程下载时,在网址输入:Edg......
  • 箭头函数与普通函数的区别、浏览器解析html的过程
    箭头函数与普通函数1.书写方式不同,箭头函数使用箭头定义,普通函数使用关键字 2.this指向不同:箭头:2.11箭头函数本身没有prototype,所以没有自己的this,2.21它的this只能......
  • JS 选项卡
    思路:需要标题和页面内容两个部分,几个标题就对应几个页面,页面设置定位使其重叠,在美化一下css样式即可当点击某个标题时,显示出与标题相关的内容,同时标题样式发生变化,然后关......
  • 表格table中ta的display属性在不同浏览器中展示的不同
    今天发现表格table中ta的display属性在不同浏览器中展示的不同,特别是block属性。<table><tr><tdstyle="display:block">111111111111111111111111111111<td><tdstyle="dis......
  • 真离谱!谁说安卓浏览器难用,不如Safari浏览器?
    我们使用手机上网经常需要使用浏览器。最近有朋友吐槽说,安卓浏览器真难用,不如Safari那么好用。但是,Safari只能在苹果手机上使用啊,这么多国人使用安卓手机,难道为了用Safari......