Step 4.3 Locate profiled interface - 2022.2 English

Vitis Tutorials: AI Engine Development

Document ID
XD100
Release Date
2022-12-01
Version
2022.2 English

After default.aierun_summary file is opened with Vitis Analyzer, select Graph view, locate the output file data/ublf_out0.txt that associated with ulbfo0 output_plio object from graph.h.

for(unsigned k=0;k<4; k++) {
    ulout[k]=output_plio::create("ulbfo"+std::to_string(k), plio_64_bits, "data/ulbf_out"+std::to_string(k)+".txt");
    connect<>(ulbf.out[k], ulout[k].in[0]);
}

This outpt_plio object is configured using profile API for output performance measurement. This can be found from host.cpp.

    event::handle handle1 = event::start_profiling(dut.ulout[0],  event::io_stream_start_to_bytes_transferred_cycles, OUT_LEN*sizeof(cint16)*2);
...
    if (handle1 != event::invalid_handle)
    {   
        cycle_count1 = event::read_profiling(handle1);
    }
...
    if (cycle_count1)
    {
        double throughput1 = (double)OUT_LEN*2/(cycle_count1 * 1e-9); //samples per second
        printf(" Output: Throughput %f samples\n", throughput1);
    } else {
        printf("cycle_count1 is ZERO!\n");
    }
Select the tile links to the output file by moving cursor on top of the tile.