图表查看器工具

您可以使用 Graph Viewer 直观呈现 XLA 程序的图结构。它会显示高级别操作 (HLO) 图。

支持的平台

TPU:受支持

GPU:受支持

界面组件

您可以使用以下选项控制图表查看器:

  1. “Select XLA Module”(选择 XLA 模块)下拉菜单,您可以从可用列表中选择要直观显示的 HLO 模块。

  2. “Op Name”(操作名称)框,您可以在其中输入操作的名称,以将其选择为主节点并直观呈现其邻居。输入操作名称后按 Enter 键即可直观显示周围的节点。

  3. “图表宽度”选择器,用于控制节点与可视化中包含的主要节点之间的最大距离。

  4. 元数据选择器,用于切换显示编译器包含的操作元数据(如果有)。请注意,选择此复选框后,您需要再次点击“搜索图表”。

  5. “Merge Fusion”复选框,用于收起或展开融合运算的组件。请注意,切换此复选框后,您需要再次点击“搜索图表”。

  6. 放大/缩小按钮或键,不过您也可以使用鼠标进行缩放。

  7. 用于将图表下载为 SVG 或点文件的链接。

  8. 通过使用搜索功能,您可以快速找到可能较大的图表中的特定操作并重点关注这些操作。

  9. 如需针对特定操作冻结运行时数据面板,请右键点击该操作。

使用图表查看器

默认情况下,图表查看器中不会选择任何操作,因此您会看到一个空白屏幕。搜索感兴趣的操作以放大该操作,然后开始浏览图表。通常,您可以先使用其他工具之一(例如,使用操作性能分析来确定耗时最长的操作,或使用轨迹查看器来确定管道气泡的原因)。点击这些工具中的操作即可获得指向 Graph Viewer 中同一操作的直接链接。

将鼠标悬停在某个框(表示 HLO 操作)上时,您通常会看到与定义函数的操作对应的用户代码行。只有在通过 Python 程序在生成加速器可执行文件的过程中经历的多层转换将此元数据提供给 XProf 时,此信息才可用。

请注意,性能分析器会从“优化的 HLO”图接收 HLO 级信息,该信息接近于编译器后端准备将其降级为加速器专用代码的位置。因此,图表查看器以及所有 XProf 工具都会处理这种低级 XLA 内部 HLO 表示法,而不是 StableHLO 或接近 ML 框架的表示法。

虽然图表本身完全是静态的,并且直接从 XLA 获取(即使不执行程序),但 Graph Viewer 会在图表上叠加其他运行时信息,以使其更实用。例如,将鼠标悬停在某个操作上会在界面左侧显示一个部分,其中会显示该操作在配置文件时长内执行的次数以及平均执行时间。它还会计算并显示各种利用率和带宽数据;这些数据会根据 XLA 对 FLOPS 和字节消耗进行的静态成本分析,并根据测量的执行时间计算出速率。