Skip to content
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

Add Grid stride pairwise dist and fused L2 NN kernels #250

Merged
merged 23 commits into from
Jun 11, 2021

Conversation

mdoijade
Copy link
Contributor

@mdoijade mdoijade commented Jun 3, 2021

This PR addresses issues mentioned in #221
-- Adds grid stride based fusedL2NN kernel, this gives approx 1.85x speed up over previous version of this kernel.
-- Adds support in pairwise dist base class to work for any input size by adding support for grid stride based work distribution.

This was submitted to branch-21.06 through PR - #232
but later reverted due to intermittent failure by - #246

…r usage in all contraction based kernels so that n is along x dir and m is along y dir blocks
…kernels. --add launch config generator function to launch optimal grid size kernel for these pairwise dist kernels
…ed up over previous version. -- improve logic of the grid launch config generator for x-dir blocks
… for subsequent gridStrideX variations. this overall improves perf of fusedL2NN to 1.85x over previous version. --Also remove checking keys only check values in fusedL2nn test case, as it may happen a row has multiple keys with same min val
…und in launchConfigGenerator. --Use constexpr in shmemSize.
@mdoijade mdoijade requested review from divyegala and a team as code owners June 3, 2021 08:45
@github-actions github-actions bot added the cpp label Jun 3, 2021
Copy link
Member

@teju85 teju85 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes LGTM. @divyegala can you approve as well?

@BradReesWork or @afender can we get approval from cugraph side too? (this only touches distance prims, so shouldn't affect cugraph)

@teju85 teju85 added 4 - Waiting on Reviewer Waiting for reviewer to review or respond improvement Improvement / enhancement to an existing function labels Jun 9, 2021
@teju85 teju85 added the non-breaking Non-breaking change label Jun 9, 2021
@mdoijade
Copy link
Contributor Author

mdoijade commented Jun 9, 2021

just FYI all the tests on cuML are passing with this fork - rapidsai/cuml#3940,
the above cuML PR contains only CI changes from @dantegd PR - rapidsai/cuml#3941 and pinning raft to use this fork.

@BradReesWork
Copy link
Member

@gpucibot merge

@rapids-bot rapids-bot bot merged commit 926a9c6 into rapidsai:branch-21.08 Jun 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4 - Waiting on Reviewer Waiting for reviewer to review or respond cpp improvement Improvement / enhancement to an existing function non-breaking Non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants