187 bool isSameType = (Expected.
Record.type == Observed.
Record.type);
188 bool isSameTargetId =
189 (Expected.
Record.target_id == std::numeric_limits<ompt_id_t>::min()) ||
190 (Expected.
Record.target_id == Observed.
Record.target_id);
191 if (!(isSameType && isSameTargetId))
194 ompt_device_time_t ObservedDurationNs =
195 Observed.
Record.record.target_data_op.end_time - Observed.
Record.time;
196 switch (Expected.
Record.type) {
197 case ompt_callback_target:
198 isEqual &= (Expected.
Record.record.target.kind ==
199 std::numeric_limits<ompt_target_t>::min()) ||
200 (Expected.
Record.record.target.kind ==
201 Observed.
Record.record.target.kind);
202 isEqual &= (Expected.
Record.record.target.endpoint ==
203 std::numeric_limits<ompt_scope_endpoint_t>::min()) ||
204 (Expected.
Record.record.target.endpoint ==
205 Observed.
Record.record.target.endpoint);
206 isEqual &= (Expected.
Record.record.target.device_num ==
207 std::numeric_limits<int>::min()) ||
208 (Expected.
Record.record.target.device_num ==
209 Observed.
Record.record.target.device_num);
211 case ompt_callback_target_data_op:
212 isEqual &= (Expected.
Record.record.target_data_op.optype ==
213 std::numeric_limits<ompt_target_data_op_t>::min()) ||
214 (Expected.
Record.record.target_data_op.optype ==
215 Observed.
Record.record.target_data_op.optype);
216 isEqual &= (Expected.
Record.record.target_data_op.bytes ==
217 std::numeric_limits<size_t>::min()) ||
218 (Expected.
Record.record.target_data_op.bytes ==
219 Observed.
Record.record.target_data_op.bytes);
220 isEqual &= (Expected.
Record.record.target_data_op.src_addr ==
221 std::numeric_limits<void *>::min()) ||
222 (Expected.
Record.record.target_data_op.src_addr ==
223 Observed.
Record.record.target_data_op.src_addr);
224 isEqual &= (Expected.
Record.record.target_data_op.dest_addr ==
225 std::numeric_limits<void *>::min()) ||
226 (Expected.
Record.record.target_data_op.dest_addr ==
227 Observed.
Record.record.target_data_op.dest_addr);
228 isEqual &= (Expected.
Record.record.target_data_op.src_device_num ==
229 std::numeric_limits<int>::min()) ||
230 (Expected.
Record.record.target_data_op.src_device_num ==
231 Observed.
Record.record.target_data_op.src_device_num);
232 isEqual &= (Expected.
Record.record.target_data_op.dest_device_num ==
233 std::numeric_limits<int>::min()) ||
234 (Expected.
Record.record.target_data_op.dest_device_num ==
235 Observed.
Record.record.target_data_op.dest_device_num);
236 isEqual &= (Expected.
Record.record.target_data_op.host_op_id ==
237 std::numeric_limits<ompt_id_t>::min()) ||
238 (Expected.
Record.record.target_data_op.host_op_id ==
239 Observed.
Record.record.target_data_op.host_op_id);
240 isEqual &= (Expected.
Record.record.target_data_op.codeptr_ra ==
241 std::numeric_limits<void *>::min()) ||
242 (Expected.
Record.record.target_data_op.codeptr_ra ==
243 Observed.
Record.record.target_data_op.codeptr_ra);
244 if (Expected.
Record.record.target_data_op.end_time !=
245 std::numeric_limits<ompt_device_time_t>::min()) {
247 ObservedDurationNs <= Expected.
Record.record.target_data_op.end_time;
249 isEqual &= ObservedDurationNs >= Expected.
Record.time;
251 case ompt_callback_target_submit:
253 Observed.
Record.record.target_kernel.end_time - Observed.
Record.time;
254 isEqual &= (Expected.
Record.record.target_kernel.requested_num_teams ==
255 std::numeric_limits<unsigned int>::min()) ||
256 (Expected.
Record.record.target_kernel.requested_num_teams ==
257 Observed.
Record.record.target_kernel.requested_num_teams);
258 isEqual &= (Expected.
Record.record.target_kernel.granted_num_teams ==
259 std::numeric_limits<unsigned int>::min()) ||
260 (Expected.
Record.record.target_kernel.granted_num_teams ==
261 Observed.
Record.record.target_kernel.granted_num_teams);
262 isEqual &= (Expected.
Record.record.target_kernel.host_op_id ==
263 std::numeric_limits<ompt_id_t>::min()) ||
264 (Expected.
Record.record.target_kernel.host_op_id ==
265 Observed.
Record.record.target_kernel.host_op_id);
266 if (Expected.
Record.record.target_kernel.end_time !=
267 std::numeric_limits<ompt_device_time_t>::min()) {
269 ObservedDurationNs <= Expected.
Record.record.target_kernel.end_time;
271 isEqual &= ObservedDurationNs >= Expected.
Record.time;
274 assert(
false &&
"Encountered invalid record type");