广告
返回顶部
首页 > 资讯 > 移动开发 >性能分析工具 之 Perfetto基本使用
  • 747
分享到

性能分析工具 之 Perfetto基本使用

android性能优化 2023-09-05 20:09:38 747人浏览 八月长安
摘要

        Perfetto是Google从Android10开始引入的一个全新的平台级跟踪分析工具。适用于Android、linux和Chrome的更加通用和复杂的用于性能检测和跟踪分析的生产级开源项目。在android系统中对性能分

        Perfetto是Google从Android10开始引入的一个全新的平台级跟踪分析工具。适用于Android、linux和Chrome的更加通用和复杂的用于性能检测和跟踪分析的生产级开源项目。在android系统中对性能分析是尤为重要的一部分,仅从loGCat中进行时间分解太繁琐,android系统中可以通过trace来分析性能。

        也可以关注“摸鱼IT”公众号,其中也会发布相关技术文档以及技术资讯 --性能分析工具 之 Perfetto基本使用

        之前使用的是systrace,现在高通平台一些芯片还是使用的是systrace,通过oversetting的配置文件打开systrace来抓取trace。也可以通过perfetto配置setting来抓trace,不论是systrace还是普通的trace,都可以通过perfetto进行查看分析。

        Perfetto提供了用于记录系统级和应用级活动的服务和库、低开销的native+java内存分析工具,可供sql分析跟踪文件的库,以及一个基于WEB用于将追踪文件可视化方便分析的Perfetto UI。相比systrace的优势:

  • 其可记录任意长度的跟踪记录并导出到文件系统中.

  • 更合理的可视化分析标记功能.

  • 内建SQLite数据库,SQL查询的支持,数据后期处理非常灵活.

        本文重要讲解perfetto的使用以及trace相关内容。

1.perfetto配置以及抓取方法

        在perfetto中可以根据用户需求自行配置需求,并生成配置文件。配置和trace分析都在perfetto的UI中进行。链接:Perfetto UI

  1.1 trace需求设置

  1.2 查看配置文件        

        完成个性化trace需求设置后,可以查看配置文件。

  1.3 配置文件生效         

        在shell中可以直接复制配置文件通过adb 设置到到设备中,可以手动修改duration_ms参数来修改抓取trace时间。如图:

        或者不使用配置文件。通过命令行方式执行,但需要手动键入需要抓取的模块。

adb shell perfetto -o /data/misc/perfetto-traces/trace_file.perfetto-trace -t 20s \
sched freq idle am wm gfx view binder_driver hal dalvik camera input res memory

1.4 获取trace文件        

        在抓取时间完成后,会显示trace路径  /data/misc/perfetto-traces/trace3,如图:

        再pull出trace文件,命名为trace_01.perfetto-trace,或者adb pull /data/misc/perfetto-traces/trace3,直接不修改trace3的命名。

adb pull /data/misc/perfetto-traces/trace3 trace_01.perfetto-trace

2.trace分析方法

        trace分析通过在 Perfetto UI 中进行,其中可以穿插SQL语言分析。

  2.1 打开trace文件

        在open trace file中打开pull出来的trace。

        打开trace文件后的效果,红框部分就是配置文件中自行配置的需求:

  2.2 基本操作方法

        基本操作通过“W”、“S”、“A”、“D”实现,英文键盘下,w可以实现对trace范围的放大,s可以缩小范围,a整体左移,d整体右移。

        基本操作还有疑问,可以在页面中shift+/ ,也就是“?”,通过官方提供的操作指南可以学习基本操作。

        左键单击某个线程,既可看到详细信息,例如耗时等。再shift+M,可以精准标注该线程,使用鼠标左键长按整个区间,选择在需要分析的部分长按,既可获取在此期间的各个进程的操作,如图所示就是在still capture期间内CPU负载的具体情况,如果想看此时CPU 频率,左键长按在CPU Frequency上既可查看期间内频率的变化。

         通过对每个线程进行精准标注,就可以知道每个操作之间的耗时,以点击拍照到拍照完成为例,deliverInputEvent表示点击时触摸按下到抬起的时间,耗时在116.9ms左右,触摸抬起后启动拍照流程耗时128.5ms,最后拍照完成still capture耗时377.9ms。

        通过如上的基本操作可以完成简单的trace查看分析。

3.写在最后

        Perfetto是很好的性能分析工具,发展很快。它不仅可以看systrace,也可以将logcat也一起提取出来,方便与其他信息放在同一个时间轴上去分析。它也可以分析memory问题,如ion 和dma_buf 泄露。Perfetto是一个高效的性能分析工具,可以提高程序员分析问题的效率,希望大家可以掌握。

来源地址:https://blog.csdn.net/qrx941017/article/details/128984365

--结束END--

本文标题: 性能分析工具 之 Perfetto基本使用

本文链接: https://www.lsjlt.com/news/395966.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 性能分析工具 之 Perfetto基本使用
            Perfetto是google从Android10开始引入的一个全新的平台级跟踪分析工具。适用于Android、Linux和Chrome的更加通用和复杂的用于性能检测和跟踪分析的生产级开源项目。在android系统中对性能分...
    99+
    2023-09-05
    android 性能优化
  • MySQL性能分析工具之PROFILE怎么用
    小编给大家分享一下MySQL性能分析工具之PROFILE怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2022-10-18
  • 性能分析工具Systrace如何使用
    这篇“性能分析工具Systrace如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“性能分析工具Systrace如何使用...
    99+
    2023-07-05
  • 使用SQLBooster工具分析Oracle性能问题
    问题现象 下午开发人员反映,一个测试环境数据库访问非常慢,让我帮忙分析原因。 正好刚装了 SQLBooster ,通过它来分析,顺便熟悉一下它的使用。 原因分析 获取等待事件 数据库慢的话首先看等...
    99+
    2022-10-18
  • 性能分析工具Systrace的使用及说明
    目录Systrace介绍Systrace使用方法详解使用命令行捕获Systreace报告文件打开System报告查看报告元素键盘快捷键使用工具帮助定位性能问题检查界面帧和提醒Syst...
    99+
    2023-03-03
    性能分析工具 Systrace的使用 性能分析工具Systrace
  • Android性能分析工具TraceView怎么用
    要使用TraceView进行Android性能分析,可以按照以下步骤进行操作: 在Android Studio中打开项目,并确保...
    99+
    2023-10-23
    Android
  • MySQL性能分析、及调优工具使用详解
    本文汇总了MySQL DBA日常工作中用到的些工具,方便初学者,也便于自己查阅。先介绍下基础设施(CPU、IO、网络等)检查的工具:vmstat、sar(sysstat工具包)、mpstat、oprofil...
    99+
    2022-10-18
  • PHP7下安装并使用xhprof性能分析工具
    目录安装 xhprof运行报错随机应变补充该 xhprof 版本是从 https://github.com/longxinH/xhprof 获取 安装 xhprof cd xhpr...
    99+
    2022-11-12
  • Paddle模型性能分析工具Profiler怎么使用
    本篇内容介绍了“Paddle模型性能分析工具Profiler怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Paddle模型性能分析P...
    99+
    2023-07-05
  • 如何使用systemtap调试工具分析MySQL的性能
    这篇文章将为大家详细讲解有关如何使用systemtap调试工具分析MySQL的性能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、 分析SQL语句在执行各个阶段的消耗比...
    99+
    2022-10-19
  • Windows 2003自带性能监控工具的使用分析
    本篇文章为大家展示了Windows 2003自带性能监控工具的使用分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。前几天有一台备库在累积了多日的REDO后,进行REDO APPLY时,整个系统变得...
    99+
    2023-06-06
  • go性能分析工具pprof的用途及使用详解
    目录pprof的用途利用runtime/pprof包实现cpu分析的步骤利用runtime/pprof包实现内存分析的步骤:利用net/http/pprof包进行性能分析总结&nbs...
    99+
    2023-01-06
    go性能分析工具 go 性能 go pprof 性能分析
  • 常用的Android性能分析工具有哪些
    常用的Android性能分析工具有以下几种: Android Studio Profiler:Android Studio自带的...
    99+
    2023-10-23
    Android
  • Linux各类性能分析工具用法详解
    文章目录 静态性能分析工具文件系统观测工具虚拟文件系统(VFS)分析工具磁盘管理工具进程资源占用监测系统库调用分析工具网络配置防火墙配置多路径配置进程调度系统命令操作查看硬件信息磁盘管理网络端...
    99+
    2023-09-02
    linux 运维 性能优化 自动化 监测
  • Linxu下性能指标采集工具之nmon工具的使用
    目录前言nmon工具下载nmon使用扩展.nmon文件解析前言 近期在测试JefLogTail,由于JefLogTail使用的是轮询的方式来监听文件夹,所以对cpu的消耗可能会高一些,所以在测试的时候着重关注CPU,li...
    99+
    2023-04-27
    Linux采集工具nmon Linux采集工具 Linux nmon
  • Kubernetes应用性能分析工具Kubectl Flame怎么用
    这期内容当中小编将会给大家带来有关Kubernetes应用性能分析工具Kubectl Flame怎么用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。什么是性能分析?性能分析是分析应用程序性能来改进代码质量...
    99+
    2023-06-15
  • PHP7下怎么安装并使用xhprof性能分析工具
    这篇文章将为大家详细讲解有关PHP7下怎么安装并使用xhprof性能分析工具,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。该 xhprof 版本是从 https://github.com/longxinH...
    99+
    2023-06-15
  • MySQL性能优化神器Explain的基本使用分析
    简介 MySQL 提供了一个 EXPLAIN 命令, 它可以对 SELECT 语句进行分析, 并输出 SELECT 执行的详细信息, 以供开发人员针对性优化. EXPLAIN 命令用法十分简单,...
    99+
    2022-10-18
  • [Python/网络安全] Git漏洞之Githack工具基本安装及使用详析
    [Python/网络安全] Git漏洞之Githack工具基本安装及使用详析 前言方法一方法二工具使用实战总结 前言 本文仅分享Githack工具基本安装及使用相关知识,不承担任何法律...
    99+
    2023-09-17
    git python web安全 网络安全
  • Linux系统下如何使用主机性能分析工具nmon
    这篇文章主要讲解了“Linux系统下如何使用主机性能分析工具nmon”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux系统下如何使用主机性能分析工具nmon”吧!nmon是收集AIX或...
    99+
    2023-06-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作