diff --git a/src/plugins/auto/src/schedule.cpp b/src/plugins/auto/src/schedule.cpp index d6850227341059..0d7bd4b0ecda3c 100644 --- a/src/plugins/auto/src/schedule.cpp +++ b/src/plugins/auto/src/schedule.cpp @@ -85,8 +85,13 @@ void Schedule::generate_workers(const std::string& device, const SoCompiledModel OPENVINO_THROW("Every device used with AUTO should support query optimal_number_of_infer_requests property from compiled model ", iie.what()); } - const auto num_requests = (m_context->m_device_priorities.end() == it_numrequests || - it_numrequests->num_requests_per_devices == -1) ? optimal_num : it_numrequests->num_requests_per_devices; + auto num_requests = + (m_context->m_device_priorities.end() == it_numrequests || it_numrequests->num_requests_per_devices == -1) + ? optimal_num + : it_numrequests->num_requests_per_devices; + num_requests = num_requests <= 1 && m_context->m_performance_hint == ov::hint::PerformanceMode::THROUGHPUT + ? 2 + : num_requests; auto& worker_requests = m_worker_requests[device]; auto& idle_worker_requests = m_idle_worker_requests[device]; worker_requests.resize(num_requests);