Port G-API ONNXRT backend into V2 API#25662
Conversation
|
Added a new member function cfgParamsMap that allows setting multiple configuration options for the OpenVINO Execution Provider by passing a map of key-value pairs, where the key is the name of the option and the value is the setting for that option. The function will throw an error if an attempt is made to set an option that has already been set or if an unknown option is provided. |
TolyaTalamanov
left a comment
There was a problem hiding this comment.
Great!
One suggestion here, most probably it's better to introduce another ctor that accepts the map rather than new handle. In that case we could prohibit using the cfg handles.
auto ovep = cv::gapi::onnx::ep::OpenVINO({"device_type", "CPU"}, {...}});
ovep.cfgNumThreads(4) // Throw: ep::OpenVINO cannot be changed if created from the parameters map.
and at the backend side we could simply check if parameters_map is empty or not, and if not - pass it "as-is" to onnxrt, otherwise populate it by using existing per-option members.
TolyaTalamanov
left a comment
There was a problem hiding this comment.
Great! Just minor comments!
is_initialised_from_map
TolyaTalamanov
left a comment
There was a problem hiding this comment.
Thanks! LGTM 👍
@dmatveev Could you have a look, please?
|
👍I am fine with it, thanks @ujjayant-kadian ! |
|
@asmorkalov Could you merge this, please? |
Pull Request Readiness Checklist
See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request
Patch to opencv_extra has the same branch name.