级联停滞分析 - 2023.2 简体中文

AI 引擎工具和流程用户指南 (UG1076)

Document ID
UG1076
Release Date
2023-12-04
Version
2023.2 简体中文
您可通过“Performance Metrics”(性能指标)分析来识别需分析的级联停滞。
  1. 选中Trace(追踪)视图。
  2. 选中Cascade Stalls(级联停滞)视图。
  3. 选中Cascade stall
  4. 这样即可在Trace视图中高亮Cascade stall
    图 1. Trace视图中的级联停滞

    每项级联停滞都包含下列信息。

    NAME(名称)
    串流停滞名为 CS_<NUM>。停滞发生时间越早,编号越小。此编号在所有类型的停滞中都是唯一的。
    Stalled Tile(停滞的拼块)
    已停滞的内核所在的 AI 引擎 tile。
    Stalled Kernel(停滞的内核)
    已停滞的内核。此内核名为 <Kernel_function_name>.<Schedule_ID>.<Graph_instance_name>。有时,它显示为 _main,随后,需通过交叉探测来查找实际的内核函数。
    Start (ps)(开始 (ps))
    发生停滞的开始时间
    Duration (ps)(持续时间 (ps))
    停滞的持续时间。
    PC
    发生停滞时的程序计数器。
    Stalled Port(停滞的端口)
    已停滞的内核所在的端口。
    Related Stalls(相关停滞)
    可能导致此停滞的其他停滞。
    Full Destination(目标已满)
    此端口已满,导致已停滞的内核无法写入。
    Empty Source(源端口为空)
    此端口为空,导致已停滞的内核无法从中读取。

    浏览Trace视图中的级联停滞,查看其彼此之间的关联。

  5. 可能是由于其他类型的停滞导致了级联停滞。浏览其他类型的停滞,分析发生停滞的原因。Stalls视图中的相关停滞可显示哪项停滞导致了级联停滞。
  6. 查看Graph视图中发生的停滞有助于识别导致停滞的原因。选中Graph视图。
  7. 选中Cascade Stalls视图。
  8. 单击Stalls视图中的路径,这样就会在Graph视图中以红色显示停滞路径。
  9. 浏览级联停滞及其关联停滞,这样有助于查找有关停滞原因的提示。单击Related Stalls也能以红色显示相关停滞。例如,单击Related Stalls中的 SS_16 即可查看红色路径,这样可以提供有关停滞开始位置的提示。
    图 2. Graph视图中的级联停滞

下表列出了导致级联停滞的部分可能场景以及可能的解决方案。

表 1. 级联停滞场景和解决方案
来源 目标对象 停滞类型 可能的解决方案
级联串流 级联串流 Cascade Stall
  • 调整内核执行周期中的级联串流读/写指令,使源内核与目标内核之间相匹配
  • 分析导致级联停滞的其他源
串流 + 级联串流 串流 + 级联串流 Cascade Stall
  • 调整指令,使不同串流间匹配
  • 分析导致级联停滞的其他源