From Performance Metrics analysis, you can identify the cascade stall that needs to be analyzed.
- Choose Trace view.
- Choose Cascade Stalls view.
- Select a Cascade stall.
- The Cascade stall is highlighted in
Trace view.Figure 1. Cascade Stall in Trace View
Each cascade stall has the following information.
- The stream stall is named CS_<NUM>. The earlier the stall happens, the smaller the number. The number is unique across all types of stall.
- Stalled Tile
- The AI Engine tile where the stalled kernel is located.
- Stalled Kernel
- The kernel that is stalled. It is named
<Kernel_function_name>.<Schedule_ID>.<Graph_instance_name>. Sometimes it is shown as
_mainand then cross-probe is required to find the real kernel function.
- Start (ps)
- The start time that the stall happens
- Duration (ps)
- The duration of the stall.
- Program counter when the stall happens.
- Stalled Port
- Which port of the stalled kernel is stalled.
- Related Stalls
- Other stalls that might cause the stall.
- Full Destination
- The port that the stalled kernel cannot write into because it is full.
- Empty Source
- The port that the stalled kernel cannot read from because it is empty.
Explore the cascade stalls in the Trace view and see how they are related.
- It is possible that other types of stalls cause the cascade stall. Explore the other types of stalls to analyze why that happened. Related stalls in the Stalls view show which stall causes the cascade stall.
- Viewing the stalls happen in Graph view can help identify the cause of the stall. Select Graph view.
- Select Cascade Stalls view.
- Click a path in the Stalls view and the stall path is shown in red in Graph view.
- Exploring the cascade stall and its related stalls, can help in finding a
hint about the cause of the stall. Clicking Related
Stalls can also show the related stall in red. For example, by
clicking SS_16 in Related
Stalls, you can see the path in red, which gives a hint
about where the stall starts.Figure 2. Cascade Stall in Graph View