@@ -39,6 +39,8 @@ populate_aie_partition(const xrt_core::device* device)
3939 pt_entry.put (" command_submissions" , entry.command_submissions );
4040 pt_entry.put (" command_completions" , entry.command_completions );
4141 pt_entry.put (" migrations" , entry.migrations );
42+ pt_entry.put (" preemption_frame_event" , entry.preemption_frame_event );
43+ pt_entry.put (" preemption_layer_event" , entry.preemption_layer_event );
4244 pt_entry.put (" errors" , entry.errors );
4345 pt_entry.put (" suspensions" , entry.suspensions );
4446 pt_entry.put (" memory_usage" , entry.memory_usage == 0 ? " N/A" : xrt_core::utils::unit_convert (entry.memory_usage ));
@@ -127,11 +129,11 @@ writeReport(const xrt_core::device* /*_pDevice*/,
127129 _output << " HW Contexts:\n " ;
128130
129131 const std::vector<std::string> headers = {
130- " |PID |Ctx ID |Submissions |Migrations |Err |Priority |" ,
131- " |Process Name |Status |Completions |Suspensions | |GOPS |" ,
132- " |Memory Usage |Instr BO | | | |FPS |" ,
133- " | | | | | |Latency |" ,
134- " |====================|===========|============|============|=====|=========|"
132+ " |PID |Ctx ID |Submissions |Migrations |Frame Evts | Err |Priority |" ,
133+ " |Process Name |Status |Completions |Suspensions |Layer Evts | |GOPS |" ,
134+ " |Memory Usage |Instr BO | | | | |FPS |" ,
135+ " | | | | | | |Latency |" ,
136+ " |====================|===========|============|============|============|===== |=========|"
135137 };
136138
137139 for (const auto & header : headers) {
@@ -143,30 +145,32 @@ writeReport(const xrt_core::device* /*_pDevice*/,
143145 const auto & hw_context = pt_hw_context.second ;
144146
145147 std::vector<boost::format> row_data;
146- row_data.emplace_back (boost::format (" |%-20s|%-11s|%-12s|%-12s|%-5s|%-9s|" )
148+ row_data.emplace_back (boost::format (" |%-20s|%-11s|%-12s|%-12s|%-12s|%- 5s|%-9s|" )
147149 % hw_context.get <int >(" pid" )
148150 % hw_context.get <std::string>(" context_id" )
149151 % hw_context.get <uint64_t >(" command_submissions" )
150152 % hw_context.get <uint64_t >(" migrations" )
153+ % hw_context.get <uint64_t >(" preemption_frame_event" )
151154 % hw_context.get <uint64_t >(" errors" )
152155 % hw_context.get <std::string>(" priority" ));
153156
154- row_data.emplace_back (boost::format (" |%-20s|%-11s|%-12s|%-12s| |%-9s|" )
157+ row_data.emplace_back (boost::format (" |%-20s|%-11s|%-12s|%-12s|%-12s| |%-9s|" )
155158 % hw_context.get <std::string>(" process_name" )
156159 % hw_context.get <std::string>(" status" )
157160 % hw_context.get <uint64_t >(" command_completions" )
158161 % hw_context.get <uint64_t >(" suspensions" )
162+ % hw_context.get <uint64_t >(" preemption_layer_event" )
159163 % hw_context.get <std::string>(" gops" ));
160164
161- row_data.emplace_back (boost::format (" |%-20s|%-11s| | | |%-9s|" )
165+ row_data.emplace_back (boost::format (" |%-20s|%-11s| | | | |%-9s|" )
162166 % hw_context.get <std::string>(" memory_usage" )
163167 % hw_context.get <std::string>(" instr_bo_mem" )
164168 % hw_context.get <std::string>(" fps" ));
165169
166- row_data.emplace_back (boost::format (" | | | | | |%-9s|" )
170+ row_data.emplace_back (boost::format (" | | | | | | |%-9s|" )
167171 % hw_context.get <std::string>(" latency" ));
168172
169- row_data.emplace_back (boost::format (" |--------------------|-----------|------------|------------|-----|---------|" ));
173+ row_data.emplace_back (boost::format (" |--------------------|-----------|------------|------------|------------|----- |---------|" ));
170174
171175 for (const auto & row : row_data) {
172176 _output << row << " \n " ;
0 commit comments