查看系统配置文件

在 Android GPU Inspector (AGI) 中,您可以在 System Profiler 界面中查看和分析 系统性能分析文件。 对系统进行性能分析并在AGI 中打开跟踪文件后,System Profiler 会在时间轴中显示性能分析数据,其中包含可展开的项,用于显示更多详细信息。

System Profiler 界面的主要元素包括:

  • 工具栏

  • 时间轴:用于指示跟踪事件的时间范围。

  • 轨道窗格:用于显示与时间轴相关的性能分析数据。

  • 详细信息窗格:一个可展开的窗格,用于显示 所选项的详细信息。

性能分析数据

在跟踪文件中,性能分析数据存储在带时间戳的事件中,称为跟踪事件。跟踪事件由各种类型的切片和计数器组成。例如,CPU 跟踪事件包括调度切片,而 GPU 跟踪事件包括 GPU 性能计数器和线程切片。

在 System Profiler 界面中,轨道窗格包含跟踪事件,这些事件显示在基于时间轴的行中,称为轨道。 同一类型的轨道显示在轨道组中。

GPU 轨道

GPU 轨道用于显示 GPU 性能分析信息。以下是主要的 GPU 轨道类型:

  1. GPU 队列轨道:应用的 GPU 活动。

  2. GPU 计数器轨道:以固定时间间隔采样的 GPU 硬件计数器。

  3. Vulkan 事件轨道:与 Vulkan API 相关的事件。

  4. SurfaceFlinger 轨道:SurfaceFlinger 事件,用于指示图形 缓冲区在系统中的移动方式。

GPU 队列轨道

根据跟踪期间运行的硬件队列数量,GPU 可以有一个或多个 GPU 队列 轨道。GPU 队列 轨道包含活动切片,这些切片表示应用使用的 GPU 工作的时间段和类型。

活动切片包含您可以查看的元数据,例如启动工作的 Vulkan 命令缓冲区、渲染通道和帧缓冲区。这些对象的 Vulkan 句柄显示在详细信息 窗格中,如下所示:

  • VkCommandBuffer
  • VkRenderPass
  • VkFrameBuffer

您可以使用简单易记的名称为这些对象命名,以便在跟踪记录中轻松识别 它们及其句柄,方法是使用 vkSetDebugUtilsObjectNameEXT 扩展中的函数,或使用 vkDebugMarkerSetObjectNameEXT 扩展中的函数。VK_EXT_debug_utilsVK_EXT_debug_markerAGI 会实现这两个扩展,并且在跟踪期间可供您的应用使用。

GPU 计数器轨道

GPU 计数器轨道以图形方式显示以固定时间间隔采样的 GPU 性能计数器的值。这些图表显示了样本之间 GPU 底层硬件组件的性能变化。您可以使用此信息来识别 GPU 使用情况中的瓶颈。

可用计数器特定于硬件。您可以将鼠标悬停在轨道名称上,以查看每个计数器的简要说明。如需了解详情,请参阅 GPU 性能计数器

Vulkan 事件轨道

Vulkan 事件轨道显示在跟踪期间记录的 Vulkan API 事件。轨道事件类型主要是队列提交事件(vkQueueSubmit 调用)。如果您点击队列提交事件,AGI 会突出显示与该调用关联的 GPU 活动切片。您可以使用此数据来检查 Vulkan API 调用排队的异步工作以及 CPU 和 GPU 之间的延迟时间。

SurfaceFlinger 轨道

SurfaceFlinger 轨道显示 图形缓冲区(应用交换链渲染目标)在系统中 运行直至显示时的生命周期。这些事件按缓冲区聚合,以便更轻松地跟踪获取和发布缓冲区所需的开销和延迟时间。

与性能分析数据互动

本部分介绍如何在 System Profiler 界面中与 性能分析数据互动。

固定

您可以使用轨道和轨道组的固定按钮来固定轨道和轨道组。

合拢和展开

某些轨道和所有轨道组都是可合拢的。某些轨道组在合拢时会显示摘要。例如,CPU 轨道组在合拢时会在图表中显示整体 CPU 使用率。

缩放

AGI 会根据缩放级别聚合性能分析数据。首次打开跟踪文件时,System Profiler 界面会以最大缩小级别显示整个性能分析文件。您可以找到感兴趣的区域,然后查看详细信息,从而检查性能分析文件。

当您放大和缩小不同轨道类型时,它们会显示不同类型的性能分析数据。例如,CPU 轨道最初显示每个线程的时间切片,然后最终在放大时切换为显示 CPU 核心利用率数据。

查看详情

您可以通过在轨道窗格中选择项,在详细信息窗格中显示详细的元数据。如果某项是可选择的,将鼠标悬停在该项上会将光标更改为指针,然后您可以选择该项。

选择时间范围

您可以选择时间范围,以便比较不同轨道中的跟踪事件。为此,请启用计时 模式,然后拖动以选择范围。以外的所有内容都会变暗,并且会显示范围的持续时间。

您还可以按 M 来选择所选切片的时间范围。然后,您可以滚动浏览其他轨道,以识别同一时间段内的事件。

您可以使用 WASD 键或通过滚动和平移来导航轨道窗格中的项。System Profiler 使用与 Systrace 相同的键盘和鼠标 快捷键。 可用快捷键包括:

  • WS,或 Ctrl++Ctrl+- 用于缩放。
  • AD,或 leftright 箭头用于左右平移视图。
  • QE,或 updown 箭头用于滚动轨道。
  • 按住 shift 可提高导航的移动速度。
  • Ctrl+ 滚动可缩放所选项。
  • F 可缩放所选项。
  • Z+0 可重置并完全缩小。
  • V 可切换突出显示 VSync(如果跟踪记录中提供)。
  • M 可通过选择当前选择项的时间范围来标记当前选择项。
  • H? 可显示键盘和鼠标快捷键速查表。

工具栏包含用于在导航模式之间切换的按钮,这些按钮用于选择在轨道窗格中拖动项时执行的操作。您还可以按 1234 键来选择以下导航模式:

  1. 选择:拖动以框选项。
  2. 平移:拖动以平移和滚动轨道。这是默认模式。
  3. 缩放:垂直拖动以缩放项。
  4. 计时:拖动以选择时间范围。

您还可以将导航模式与以下修饰键搭配使用:

  • Shift+ 拖动以框选项。
  • Space+ 拖动以平移和滚动。
  • Ctrl+ 滚动以缩放。
  • Ctrl+ 拖动以选择时间范围。