1

我正在尝试加快人员计数器应用程序的推理速度,为了使用 GPU,我已按说明设置了推理引擎配置设置:

device_name = "GPU"
ie.SetConfig({ {PluginConfigParams::KEY_CONFIG_FILE, "./cldnn_global_custom_kernels/cldnn_global_custom_kernels.xml"} }, device_name);

并在推理引擎上加载网络我已经设置了目标设备,如下所述:

CNNNetwork net = netReader.getNetwork();

TargetDevice t_device = InferenceEngine::TargetDevice::eGPU; 

network.setTargetDevice(t_device);

const std::map<std::string, std::string> dyn_config = { { PluginConfigParams::KEY_DYN_BATCH_ENABLED, PluginConfigParams::YES } };

ie_.LoadNetwork(network,device_name, dyn_config);

但是推理引擎尚未使用 CPU,这会减慢推理时间。有没有办法以最大功率使用英特尔 GPU 在特定网络上进行推理?我正在使用 person-detection-retail-0013 模型。

谢谢。

4

1 回答 1

1

您是说 person-detection-retail-0013 吗?因为我在 open_model_zoo 存储库中没有找到行人检测零售 013。

您可能会在使用 GPU 时看到速度变慢。您测试的网络具有以下层作为网络拓扑的一部分:PriorBox、DetectionOutput。正如文档所述,这些层在 CPU 上执行:https ://docs.openvinotoolkit.org/latest/_docs_IE_DG_supported_plugins_CL_DNN.html 我猜这可能是速度变慢的原因。

但为了 100% 确定,我建议运行 benchmark_app 工具来对模型进行基准测试。该工具可以打印有关每一层的详细性能信息。它应该有助于阐明放缓的真正根本原因。有关 benchmark_app 的更多信息,请参见:https ://docs.openvinotoolkit.org/latest/_inference_engine_samples_benchmark_app_README.html

PS:只是关于使用 IE API 的一条建议。network.setTargetDevice(t_device);- setTargetDevice 是一个不推荐使用的方法。LoadNetwork在您的示例中使用 like设置设备就足够了:ie_.LoadNetwork(network,device_name, dyn_config);

希望它会有所帮助。

于 2020-01-28T20:31:24.173 回答