-
Notifications
You must be signed in to change notification settings - Fork 226
Support spmd knn search #3262
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
Support spmd knn search #3262
Conversation
|
/intelci: run |
|
/intelci: run |
1 similar comment
|
/intelci: run |
| distances_, | ||
| { select_indc_event, copy_sqrt_event }); | ||
| return final_event; | ||
| if (result_options_.test(result_options::responses)) { |
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.
you have 2 returns in the same if
return this->output_responses(bounds, indices_, distances_, { select_indc_event, copy_sqrt_event });
and if (this->compute_sqrt_) { return copy_sqrt_event; }
Can they conflict?
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 are 3 cases with 3 return possibilities. If one returns, then the others will not be reached.
|
In file included from cpp/oneapi/dal/algo/knn/backend/gpu/infer_kernel_brute_force_dpc.cpp:24: |
|
/intelci: run |
|
/intelci: run ml-benchmarks |
|
latest CI with both branches: |
* Support spmd knn search * clang * further restriction of responses logic based on result_options * clang * fix event addition * add queue waits for experimentation * trying without split_table * take 2 * revert debugging * address comment * restore last * debugaboo * further debugging * MORE DEBUG * further debugging * more * shared instead of device * revert last and try wait and throw on copy * trying wait_or_pass * push back events * hotfix: working but suboptimal wait_and_throw in loop * remove debug * minor formatting revisions
Description
Fix errors that occur when calling kNN search (ie without responses result_option set). Uses result option indication of whether results are requested, and only runs this logic when it is (previously it was running in all cases because regressor and classifier use responses, but its not needed for search)
Corresponding sklearnex PR adding these interfaces to API: uxlfoundation/scikit-learn-intelex#2557
Checklist to comply with before moving PR from draft:
PR completeness and readability
Testing