什么是 Perfetto?

TIP: 如果你不熟悉 tracing,或者换句话说,对性能领域比较陌生,我们建议先阅读 什么是 Tracing? 页面。

Perfetto 是一个开源的 SDK、守护进程和工具套件,使用 tracing 帮助开发者理解复杂系统的行为,并在客户端/嵌入式系统上定位功能和性能问题的根本原因。

它包括:

为什么使用 Perfetto?

Perfetto 从设计之初就作为 Android 操作系统和 Chrome 浏览器的默认 tracing 系统。因此,Perfetto 官方支持收集、分析和可视化:

除了这些"官方"用例之外,Perfetto 还包含一套高度灵活的工具。这使它能够用作通用 tracing 系统、性能数据分析器或 Timeline 可视化工具。Perfetto 团队投入部分时间支持这些用例,尽管支持级别较低。

Perfetto 的其他常见用例包括:

为什么使用 Perfetto?

Perfetto 有几种类型的场景是不适合或明确不支持的。

如何开始使用 Perfetto?

我们理解 Perfetto 有很多组件,因此对于项目新手来说可能会感到困惑,不知道哪些与他们相关。因此,我们有专门的页面:如何开始使用 Perfetto?

谁在使用 Perfetto?

Perfetto 是 Android 操作系统Chromium 浏览器默认 tracing 系统。因此,Perfetto 被 Google 的这些团队广泛使用,既用于主动识别性能改进,也用于被动地在本地、实验室甚至从现场调试/定位问题。

Google 还有许多其他团队以多种方式使用 Perfetto。这包括 tracing 系统的"非传统"用途。Perfetto 也被业界许多其他公司广泛使用和采用。

以下是在博客文章、文章和视频中公开提及 Perfetto 的非详尽列表:

在哪里可以找到更多信息并获得 Perfetto 的帮助?

关于我们的源代码和项目主页: GitHub

问答:

影响 Perfetto 任何部分(Chrome tracing 除外)的错误:

影响 Chrome Tracing 的错误:

直接与 Perfetto 团队聊天:

Perfetto 遵循 Google 开源社区指南