fix opencv/opencv#20613 -- selectOpenCLDevice#20689
Merged
opencv-pushbot merged 1 commit intoopencv:3.4from Sep 10, 2021
diablodale:fix20613-selectocldevice
Merged
fix opencv/opencv#20613 -- selectOpenCLDevice#20689opencv-pushbot merged 1 commit intoopencv:3.4from diablodale:fix20613-selectocldevice
opencv-pushbot merged 1 commit intoopencv:3.4from
diablodale:fix20613-selectocldevice
Conversation
Merged
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This fixes #20613 and is compatible with existing behavior of platforms, device types, and device indices. It fixes the case of multiple platforms when those platforms have common substrings. See issue for details.
There should be no change in already working existing behavior of 3.4 and 4.x master when using APIs that allow specification of OpenCL "configuration" or setting the envvar
OPENCV_OPENCL_DEVICE. If it worked before, it should continue working in the same way. It it previously failed and could only use the workaround I describe in the issue...now the PR's code will work using the expected manner + the workaround.Code approach:
I could not think of a consistent way to create a test case to exercise this. So existing test cases and CI processes should continue to work. It should not cause a failure.
It is possible to create a specific test case for a specific machine. So if you want that, I will need to have a specific CI setup for the specific fail case described in the issue. Then I can write a test case for that scenario to catch regressions on that specific CI setup.
Pull Request Readiness Checklist
Patch to opencv_extra has the same branch name.