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

[WIP] Batching haversine to improve concurrency #191

Closed

Conversation

cjnolet
Copy link
Member

@cjnolet cjnolet commented Apr 1, 2021

No description provided.

@cjnolet cjnolet requested a review from divyegala as a code owner April 1, 2021 00:42
@github-actions github-actions bot added the cpp label Apr 1, 2021
@cjnolet cjnolet requested review from a team as code owners April 19, 2021 22:29
@cjnolet cjnolet changed the base branch from branch-0.19 to branch-0.20 April 19, 2021 22:32
@cjnolet cjnolet added enhancement New feature or request non-breaking Non-breaking change improvement Improvement / enhancement to an existing function and removed enhancement New feature or request labels Apr 19, 2021
@cjnolet
Copy link
Member Author

cjnolet commented Apr 19, 2021

Tagging @miguelusque for awareness. The google test is passing. I'm going to do some profiling on your dataset before I mark this one for review.

@cjnolet
Copy link
Member Author

cjnolet commented Apr 21, 2021

@miguelusque, after profiling this with better concurrency, it looks like the trigonometry here is definitely the bottleneck. I'm going to improve this further by pruning distance computations. I'm going to start with a modification of the random ball cover algorithm to k-neighbors (for exact search) since it is straightforward to implement on the GPU with our current brute force knn primitive and can be reused to speed up other algorithms which require an exhaustive brute-force on all data samples.

@miguelusque
Copy link
Member

@cjnolet thank you for the update, and for your effort to speed up this metric. Appreciate it!

@cjnolet
Copy link
Member Author

cjnolet commented Apr 26, 2021

I've opened #213 as a continuation of this work, which investigates using the random ball cover to reduce the number of distance calculations.

@cjnolet cjnolet closed this Jun 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.

2 participants