当前位置: 首页 > news >正文

高明网站设计公司运营培训班有用吗

高明网站设计公司,运营培训班有用吗,网站建设推广公司,海外做代购去哪个网站Android性能优化–Perfetto用SQL性能分析 文章目录 Android性能优化--Perfetto用SQL性能分析介绍Perfetto SQL 基础使用 Perfetto SQL 进行性能分析总结 本文首发地址 https://blog.csdn.net/CSqingchen/article/details/134167741 最新更新地址 https://gitee.com/chenjim/che…

Android性能优化–Perfetto用SQL性能分析

文章目录

  • Android性能优化--Perfetto用SQL性能分析
    • 介绍
    • Perfetto SQL 基础
    • 使用 Perfetto SQL 进行性能分析
    • 总结

本文首发地址 https://blog.csdn.net/CSqingchen/article/details/134167741
最新更新地址 https://gitee.com/chenjim/chenjimblog
Perfetto 抓取 trace 可参考 https://blog.csdn.net/CSqingchen/article/details/128900541

介绍

Perfetto 是一个由 Google 开发的高性能、可扩展的事件追踪系统,用于在实时和离线场景下监控系统的性能。
它通过一种简单且强大的查询语言(称为 SQL)来分析和查询事件数据。
在本博客中,我们将深入探讨如何使用 SQL 在 Perfetto 中进行性能分析。

Perfetto SQL 基础

Perfetto SQL 是一种用于查询事件数据的语言,它支持大多数标准的 SQL 操作,
如 SELECT、FROM、WHERE、GROUP BY、ORDER BY 等。
在 Perfetto 中,数据以表格的形式存储,因此你可以使用 SQL 来检索和操作这些数据。
下面是一个简单的 Perfetto SQL 查询示例:
SELECT ts, dur, name FROM slice WHERE ts > 85545835986081 AND ts < 85546017415330
ts, dur, name 是挑选的字段,slice 是挑选的表名

示例 trace 文件可以在 data/perfetto下载 xiaomi13.camera.trace.7z
解压后,在 https://ui.perfetto.dev/ 打开

可以使用如下命令查看表中有哪些字段
SELECT * FROM slice LIMIT 10

如果 trace 中包含 android log,还可以用如下命令过滤日志
SELECT * FROM android_logs WHERE msg LIKE "%ProcessRequest%" LIMIT 30

trace 中有哪些表可用,以及各个字段是什么关系呢,可以参考
https://perfetto.dev/docs/analysis/sql-tables
其中 Event 关系图如下

使用 Perfetto SQL 进行性能分析

使用 Perfetto SQL 进行性能分析的关键在于理解如何构造查询以获取你需要的信息。
以下是一些常见的性能分析任务和相应的 SQL 查询示例:

  1. 分析特定事件的发生频率:
    SELECT COUNT(*) FROM slice WHERE name = 'waitForNextFrame'
    waitForNextFrame 一共有多少次
  2. 分析事件的性能数据:
    SELECT (dur/1e6) FROM slice WHERE name = 'waitForNextFrame'
    每次 waitForNextFrame 耗时多少毫秒。dur单位是纳秒
  3. 分析一段时间内的事件数据:
    SELECT MIN(dur/1e6) as min_duration, MAX(dur/1e6) as max_duration, AVG(dur/1e6) as avg_duration FROM slice WHERE name = 'waitForNextFrame' and dur > 0
    显示 waitForNextFrame 最小、最大、平均值
  4. 对事件进行排序:
    SELECT (dur/1e6),ts,name FROM slice WHERE name LIKE '%wait%' and dur > 0 ORDER by dur DESC
  5. 统计 CPU 时间
     DROP VIEW IF EXISTS slice_with_utid;CREATE VIEW slice_with_utid ASSELECTts,dur,slice.name as slice_name,slice.id as slice_id, utid,thread.name as thread_nameFROM sliceJOIN thread_track ON thread_track.id = slice.track_idJOIN thread USING (utid);DROP TABLE IF EXISTS slice_thread_state_breakdown;CREATE VIRTUAL TABLE slice_thread_state_breakdownUSING SPAN_LEFT_JOIN(slice_with_utid PARTITIONED utid,thread_state PARTITIONED utid);SELECT slice_id, slice_name, SUM(dur) AS cpu_timeFROM slice_thread_state_breakdownWHERE state = 'Running'GROUP BY slice_id;
    

基本都是 SQL 语句,SQL关键字含义可以参考 https://www.w3schools.cn/sql/

总结

使用 Perfetto 和 SQL 进行性能分析是一种强大而灵活的方法。
通过理解如何构造 SQL 查询,你可以轻松地获取你需要的信息,从而更好地理解系统的性能。
在 Perfetto 中使用 SQL 进行性能分析可以帮助你更好地理解系统的性能,并找出潜在的性能问题。

相关文章
Android性能优化–Perfetto抓取trace
Android性能优化–perfetto分析native内存泄露
Android性能优化–Perfetto用SQL性能分析

参考文章
https://perfetto.dev/docs/quickstart/trace-analysis
https://perfetto.dev/docs/analysis/common-queries
https://zhuanlan.zhihu.com/p/641412977
https://yiyan.baidu.com/share/gdFw3P5ucI

http://www.mmbaike.com/news/81697.html

相关文章:

  • 软件商店下载电脑版北京seo优化哪家公司好
  • 深圳市官网长沙seo推广优化
  • 高级网站建设费用腾讯云1元域名
  • 商城购物网站建设深圳广告公司
  • 手机微网站 模板网站推广优化的方法
  • 汽车网站有哪些宁波seo搜索平台推广专业
  • 做的网站名小学生简短小新闻十条
  • 做产品网站费用留手机号广告
  • 成品电影网站建设必应搜索引擎首页
  • 设计海报网站软文撰写
  • 做网站做图电脑需要什么配置网页设计费用报价
  • 免费网站建设自带后台管理程序网络媒体广告代理
  • 长沙网站推广百度推广的广告真实可信吗
  • 吧网站做软件的软件阿亮seo技术
  • wordpress导航条合肥百度网站排名优化
  • 网站建设定制公众号小程序今日新闻内容
  • 网站建设的服务和质量电商从零基础怎么学
  • 代替wordpress茂名百度seo公司
  • 66郑州网站建设2020 惠州seo服务
  • div css旅游网站模板今天刚刚最新消息2023
  • wordpress站点维护本地服务推广平台哪个好
  • 购物网站建设流程ueeshop建站费用
  • 华为荣耀手机商城官方网站西安seo霸屏
  • 网站地图怎么上传营销型网站有哪些平台
  • 龙岗网站建设需要考量些什么关键词优化报价
  • o2o网站建设资讯今日的最新消息
  • 手机网站模板免费seo的含义是什么意思
  • 三里屯网站建设公司武汉做网页推广公司
  • 门户网站建设计划泰州网站建设优化
  • 晋江论坛怎么搜索帖子搜索引擎营销与seo优化