news 2026/4/16 10:57:49

基于btrace的Perfetto的函数耗时监控

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于btrace的Perfetto的函数耗时监控

一,背景介绍

BTrace是一个开源项目。旨在为 java 提供安全可靠的动态跟踪分析工具。Btrace基于动态字节码修改技术 (Hotswap) 来实现运行时 java 程序的跟踪和替换,基于该思想,兼容到Perfetto采集trace文件后,进行性能分析。相比于Perfetto自身抓取的trace文件,btrace主要能量化分析函数运行时间,方便进行卡顿等分析。

二,使用

参考https://blog.csdn.net/ByteDanceTech/article/details/131408000文章,

2.1 抓取trace文件

java -jar rhea-trace-shell.jar -a ${your_package_name} -t 10 -o output.pb -r sched gfx input view

2.2 分析trace文件

加载drawable的函数执行时间

SELECT s.id AS slice_id, s.ts, s.dur / 1e6 AS dur_ms, s.name, p.name AS process_name, t.name AS thread_name FROM slice s JOIN thread_track tt ON s.track_id = tt.id JOIN thread t ON tt.utid = t.utid JOIN process p ON t.upid = p.upid WHERE lower(s.name) LIKE '%loaddrawable%' ORDER BY s.dur DESC LIMIT 10;

结果展示,

线程池线程函数执行时长

SELECT s.id AS slice_id, s.ts, s.dur / 1e6 AS dur_ms, s.name, p.name AS process_name, t.name AS thread_name FROM slice s JOIN thread_track tt ON s.track_id = tt.id JOIN thread t ON tt.utid = t.utid JOIN process p ON t.upid = p.upid WHERE lower(s.name) LIKE '%RunnableWrapper.run%' ORDER BY s.dur DESC LIMIT 10;
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/13 12:59:40

Jupyter Notebook插入网页内容iframe嵌入

Jupyter Notebook 中嵌入网页内容:基于 iframe 的高效开发实践 在现代数据科学和深度学习项目中,开发者常常面临一个看似简单却影响深远的问题:如何在一个统一的界面中同时进行代码编写、模型训练监控与可视化分析?频繁地在 Jupyt…

作者头像 李华
网站建设 2026/4/16 7:20:26

域名注册全攻略:从概念到落地的完整指南

域名注册全攻略:从概念到落地的完整指南在互联网时代,域名是企业和个人在网络世界的"数字门牌",具有标识性、唯一性和商业价值。域名注册不仅是搭建网站的基础步骤,更是品牌战略的重要组成部分。本文将系统梳理域名注册…

作者头像 李华
网站建设 2026/4/16 9:04:40

Conda install pytorch-gpu指定版本安装

使用 Conda 精准安装指定版本的 PyTorch-GPU 在深度学习项目中,环境配置常常比写模型代码更让人头疼。你是否曾遇到过这样的场景:从 GitHub 拉下一个项目,兴冲冲地运行 pip install torch,结果训练时发现 GPU 不可用?…

作者头像 李华
网站建设 2026/4/15 17:53:32

TLS1.3时代,如何让加密流量“透明”?

当金融交易、医疗数据、政务信息乃至企业内部通信,都运行在TLS1.3构筑的加密通道中,所有安全管理者面临一个共同的困境:究竟该如何看见流量内容,有效管控数据风险?加密保障了数据传送的安全,却也筑起了一座…

作者头像 李华
网站建设 2026/4/15 7:42:40

PyTorch Dropout层防止过拟合机制解析

PyTorch Dropout层防止过拟合机制解析 在深度学习的实际项目中,一个常见而棘手的问题是:模型在训练集上表现优异,准确率节节攀升,但一到测试数据或真实场景中就“掉链子”——这种现象正是过拟合(Overfitting&#xff…

作者头像 李华