Trace Report in the File - Trace Report in the File - 2025.2 English - XD100

Vitis Tutorials: AI Engine Development (XD100)

Document ID
XD100
Release Date
2026-03-27
Version
2025.2 English

Trace capability is used to debug simulation hangs without instrumenting kernel code or using GDB.

Consider Scenario 1 in the Deadlock Detection section, where the stream data from the producer kernel does not match the consumer kernel. Now see how to visualize the information using the trace feature of the x86simulator.

  1. Make changes to the source code as mentioned in the Deadlock Detection section, Scenario 1, and build the project.

  2. Open the launch configuration settings and select Enable trace.

  3. Run x86simulation by selecting Run under X86SIMULATION in the Flow navigator.

  4. After the run completes, you can see the following information in the console.

    Processing './x86simulator_output/trace/x86sim_event_trace.data'
    10% complete
    50% complete
    70% complete
    80% complete
    100% complete
    Wrote './x86simulator_output/trace/x86sim_event_trace.data.txt'
    Wrote ./x86simulator_output/simulator_state_post_analysis.dot
    Simulation completed successfully returning zero
    
  5. Open the $(COMPONENT_NAME)/Output/x86sim/x86simulator_output/trace/x86sim_event_trace.data.txt file, and observe the trace events.

  6. Observe events for all kernels. For mygraph.d_s, go to the last but one timestamp on that kernel, and locate the stream stall begin in[1] followed by thread terminated, indicating the deadlock.

  7. You can also add –dump to the simulator options, open the .txt files, and observe the snapshot and iteration values to understand how many data samples were processed.

For more details on recorded events, refer to the Trace Report section in the AI Engine Tools and Flows User Guide (UG1076).