New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DNN/CUDA: Solve the bug of same shape broadcast with CUDA #23560
Conversation
@peters Hi, could you help to test if this pr will run yolov7-tiny correctly mentioned in e3e1f70#commitcomment-110475963? Thanks! |
DNN/CUDA: make 'abcd op 1b11' broadcast eltwise operator support cuda
@WanliZhong This PR fixes the yolov7-tiny inference problem. All tests are now green on our side! Thank you :) |
@peters That's good! Thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! 👍
Test results after merged PR #23557 and this PR |
Lets re-enable disabled tests. They are fine on CPU target and pass on CUDA target (but they are slow in the current implementation). On CUDA target they could be skipped (if performance is critical) in this way:
or
To manually run "skipped" tests by tags add this option: |
Thanks @opencv-alalek ! I will enable it. |
4083096
to
80045b5
Compare
80045b5
to
46991bc
Compare
@opencv-alalek All tests are green. Should I merge with enabled or disabled brute-force tets? |
@@ -1949,6 +1949,9 @@ struct Layer_Test_Eltwise_bcast : testing::TestWithParam<tuple<string, int, tupl | |||
int backend = get<0>(backend_target); | |||
int target = get<1>(backend_target); | |||
|
|||
if (backend == DNN_BACKEND_CUDA && dim > 4) | |||
applyTestTag(CV_TEST_TAG_LONG); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW, Looks like no tests are skipped on CI.
CV_TEST_TAG_VERYLONG
tests are skipped by default.
CV_TEST_TAG_LONG
tests should be skipped on embedded platforms or coverage/valgrind build configurations (though extra parameter on CI).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, lets run all CUDA tests.
Merged after #23557
Fix yolo regression error mentioned in e3e1f70#commitcomment-110475963
After fix this bug, the brute force test mentioned in #23556 will all passed with CUDA. (different shape broadcast will fallback to cpu)
Test is added in PR #23557
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.