-
Notifications
You must be signed in to change notification settings - Fork 156
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
Reorganize cuSpatial headers #1097
Reorganize cuSpatial headers #1097
Conversation
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.
Only small comments below, I think we should merge this asap so that you don't have to deal with conflicts from other C++ changes.
1 more comment on cython pxd bindings ("_lib/cpp/") - their file structure should exactly match hpp files. But I can create a new issue to track that: #1101
} // namespace detail | ||
|
||
template <typename IdInputIt, typename PointInputIt, typename BoundingBoxOutputIt, typename T> | ||
BoundingBoxOutputIt point_bounding_boxes(IdInputIt ids_first, |
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.
In the case of bounding_box
I think this works out pretty nicely. For other functions (say distance), should we include all implementation in one file too?
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.
I think combining implementations only makes sense if it reduces complexity and repetition. If it causes large files that are harder to navigate then I wouldn't do it. I've seen both situations in cuSpatial, so I think we can handle it on a case-by-case basis.
Can you also provide compile time of this PR against branch-23.06? |
Added to description. |
/merge |
Description
Fixes #1080 based on the discussion in #1087
distance.hpp/.cuh
,intersection.hpp/.cuh
.points_in_spatial_window
vs.points_in_range
.This PR does NOT yet reorganize source code.
Update: Compilation Time Results
Compilation time is not changed appreciably by this PR (<0.5% faster).
This test was performed by disabling
sccache
, erasing everything in the build directory, configuring cmake (including building tests and benchmarks), and then runningtime ninja
. My machine has a "AMD Ryzen 7 3700X 8-Core Processor", and I'm using Ninja's default parallelism.Disabling
sccache
when using the cuSpatial devcontainerThis branch:
branch-23.06
:Checklist