Skip to content

Commit ec04bff

Browse files
authored
AC: update for new infer api changes (#2963)
1 parent 6ccd50f commit ec04bff

File tree

2 files changed

+12
-10
lines changed

2 files changed

+12
-10
lines changed

tools/accuracy_checker/openvino/tools/accuracy_checker/evaluators/custom_evaluators/base_models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,7 @@ def infer(self, input_data):
333333
outputs = self.infer_request.infer(feed_dict)
334334
return {
335335
out_node.get_node().friendly_name: out_res
336-
for out_node, out_res in zip(self.exec_network.outputs, outputs)
336+
for out_node, out_res in outputs.items()
337337
}
338338

339339

tools/accuracy_checker/openvino/tools/accuracy_checker/launcher/openvino_launcher.py

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ def predict(self, inputs, metadata=None, **kwargs):
201201
outputs = self.infer_request.infer(inputs=feed_dict)
202202
results.append({
203203
out_node.get_node().friendly_name: out_res
204-
for out_node, out_res in zip(self.exec_network.outputs, outputs)
204+
for out_node, out_res in outputs.items()
205205
})
206206
if self.reset_memory_state:
207207
for state in self.infer_request.query_state():
@@ -224,7 +224,7 @@ def _predict_sequential(self, inputs, metadata=None, **kwargs):
224224
out_tensors = self.infer_request.infer(infer_inputs)
225225
output_result = {
226226
out_node.get_node().friendly_name: out_tensor
227-
for out_node, out_tensor in zip(self.exec_network.outputs, out_tensors)
227+
for out_node, out_tensor in out_tensors.items()
228228
}
229229
lstm_inputs_feed = self._fill_lstm_inputs(output_result)
230230
results.append(output_result)
@@ -315,6 +315,7 @@ def async_mode(self, flag):
315315
self._async_mode = flag
316316

317317
def get_async_requests(self):
318+
self._set_nireq()
318319
return [
319320
AsyncInferRequestWrapper(ireq_id, self.exec_network.create_infer_request())
320321
for ireq_id in range(self.num_requests)]
@@ -356,7 +357,6 @@ def _prepare_ie(self, log=True):
356357
self._prepare_multi_device(log)
357358
else:
358359
self.async_mode = self.get_value_from_config('async_mode')
359-
self._set_nireq()
360360
if log:
361361
self._log_versions()
362362
self._device_specific_configuration()
@@ -408,8 +408,11 @@ def _set_nireq(self):
408408
print_info('Infer requests number:{}'.format(self.num_requests))
409409

410410
def auto_num_requests(self, return_list=False):
411-
concurrency_device = {'CPU': 1, 'GPU': 1, 'HDDL': 100, 'MYRIAD': 4}
412411
platform_list = self._devices_list()
412+
concurrency_device = {'CPU': 1, 'GPU': 1, 'HDDL': 100, 'MYRIAD': 4}
413+
if hasattr(self, 'exec_network') and self.exec_network is not None:
414+
num_requests = self.exec_network.get_metric('OPTIMAL_NUMBER_OF_INFER_REQUESTS')
415+
return num_requests
413416
if 'CPU' in platform_list and len(platform_list) == 1:
414417
min_requests = [4, 5, 3]
415418
cpu_count = multiprocessing.cpu_count()
@@ -448,12 +451,10 @@ def _prepare_multi_device(self, log=True):
448451
if num_devices != len(num_per_device_requests):
449452
raise ConfigError('num requests for all {} should be specified'.format(num_devices))
450453
self._num_requests = sum(num_per_device_requests) * 2
454+
self._async_mode = True
451455
if log:
452456
self._log_versions()
453457
print_info('Async mode activated')
454-
print_info('Request number for each device:')
455-
for device, nreq in zip(device_list, num_per_device_requests):
456-
print_info(' {} - {}'.format(device, nreq))
457458

458459
def _set_device_config(self, device_config):
459460
if not isinstance(device_config, dict):
@@ -881,10 +882,11 @@ def prepare_data_for_request(self,
881882
context = (batch_id, batch_input_ids, batch_annotation, batch_identifiers, batch_meta)
882883
return feed_dict, context
883884

884-
def get_result_from_request(self, request):
885+
@staticmethod
886+
def get_result_from_request(request):
885887
return [{
886888
out.get_node().friendly_name: tensor.data for out, tensor
887-
in zip(self.exec_network.outputs, request.output_tensors)}
889+
in request.results.items()}
888890
]
889891

890892
def input_shape(self, input_name):

0 commit comments

Comments
 (0)