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

Simplify distance/detail to make is easier to dispatch to different kernel implementations #1142

Merged
merged 67 commits into from
Mar 10, 2023
Merged
Show file tree
Hide file tree
Changes from 61 commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
8d3e8a0
contractions: Concentrate tile index calculations
ahendriksen Sep 2, 2022
cb7baab
pairwise_distance_base: Remove all ldgXY(0) calls
ahendriksen Sep 2, 2022
066bf3b
pairwise_distance_base: Move all logic into run loop
ahendriksen Sep 2, 2022
a15d5fc
pairwise_distance_base: Fix typo
ahendriksen Oct 5, 2022
71c6da6
Remove deprecated header
ahendriksen Jan 11, 2023
4bbedf6
Replace lambdas by raft::void_op
ahendriksen Jan 12, 2023
c3d1f6e
Use an operator for L1 distance
ahendriksen Jan 12, 2023
3e3478b
Add launch function
ahendriksen Jan 12, 2023
264a9d2
l1: Replace run-time -> compile-time dispatch
ahendriksen Jan 13, 2023
b232057
pairwise matrix: move files into subdirectories
ahendriksen Jan 13, 2023
06f6ffa
pairwise matrix: Untangle dispatching and kernel template parameters
ahendriksen Jan 13, 2023
2f41faa
l2 unexp: Use pairwise matrix dispatch
ahendriksen Jan 13, 2023
7938614
l2 exp: Use pairwise matrix dispatch
ahendriksen Jan 13, 2023
7afe6cc
Add template for distance operator
ahendriksen Jan 13, 2023
5fe3292
Reenable cutlass-based kernels for CUDA 12.0
ahendriksen Jan 13, 2023
c623332
pairwise matrix l2: Add support for CUTLASS kernels
ahendriksen Jan 13, 2023
27511fc
Canberra: use dispatching mechanism
ahendriksen Jan 13, 2023
58ce6f8
Chebyshev: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
d397c17
Correlation: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
7005a4f
Hamming: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
7831deb
Hellinger: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
4dc72ce
Jensen-Shannon: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
b0d36c1
remove old hamming code
ahendriksen Jan 13, 2023
e95a65b
KL divergence: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
f1c105b
Minkowski: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
ac66e3f
Russel-Rao: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
a89896a
Cosine: use pairwise matrix dispatch
ahendriksen Jan 13, 2023
16b2acd
Fix include for l1 op
ahendriksen Jan 13, 2023
1326e34
kl_divergence: Use raft::log instead of raft::myLog
ahendriksen Feb 10, 2023
0169b26
distance_op: Add expensive_inner_loop marker
ahendriksen Feb 10, 2023
52e95e1
Update copyright notices
ahendriksen Feb 10, 2023
28cd57b
Reusable dispatch mechanism
ahendriksen Feb 10, 2023
c44aece
Dispatch mechanism using switch statement
ahendriksen Feb 10, 2023
7c3bd76
Remove one ".template" from kernel_sm60
ahendriksen Feb 10, 2023
d62eeb7
Dispatch on veclen instead of byte_alignment
ahendriksen Feb 10, 2023
5c3dcaf
Use many template parameters again
ahendriksen Feb 20, 2023
2613e8a
Remove duplicate DistanceType enum definition
ahendriksen Feb 20, 2023
62ed53a
Remove pairwiseDistanceMatKernel
ahendriksen Feb 20, 2023
c334ba3
Remove distance::detail::pairwise_distance_impl
ahendriksen Feb 20, 2023
8e43238
distance_ops: Include cuda_utils.cuh
ahendriksen Feb 21, 2023
e176351
Replace DistanceImpl with method overloads
ahendriksen Feb 21, 2023
6ddd14f
Remove impl files and move doc strings
ahendriksen Feb 21, 2023
34ccddc
Update readme
ahendriksen Feb 21, 2023
b27cdca
Merge branch 'rapids/branch-23.04' into wip-refactor-distance
ahendriksen Feb 21, 2023
6a12ded
Reenable device code generation
ahendriksen Feb 21, 2023
486393e
Readd overload of raft::distance::detail::distance
ahendriksen Feb 21, 2023
ca29e2d
Fix style
ahendriksen Feb 21, 2023
28c95a1
Fix 11.8 compilation error
ahendriksen Feb 22, 2023
a5592b9
Rename minkowski -> lp_unexp
ahendriksen Feb 22, 2023
265ba07
Rename Chebyshev -> l_inf
ahendriksen Feb 22, 2023
7ccb8a7
Rename euc -> l2
ahendriksen Feb 22, 2023
874d014
Update copyright headers
ahendriksen Feb 22, 2023
757fb44
Remove misleading note about workspace nullptr
ahendriksen Feb 22, 2023
d6e9261
Remove notes file
ahendriksen Feb 22, 2023
885bda6
Put template on struct instead of methods
ahendriksen Feb 22, 2023
cd38ec6
Fix style
ahendriksen Feb 22, 2023
e7a8e89
Merge branch 'branch-23.04' into wip-refactor-distance
cjnolet Feb 22, 2023
6467221
Update cpp/include/raft/distance/detail/distance_ops/canberra.cuh
ahendriksen Mar 6, 2023
a83461e
Update cpp/include/raft/distance/detail/distance.cuh
ahendriksen Mar 6, 2023
393edf3
Add note about alignment in case of byte input
ahendriksen Mar 6, 2023
48a0c21
Fix
ahendriksen Mar 7, 2023
393c546
Merge branch 'branch-23.04' into wip-refactor-distance
cjnolet Mar 8, 2023
c9cbf2c
Merge branch 'branch-23.04' into wip-refactor-distance
cjnolet Mar 9, 2023
569b2c2
Add issue for TODO
ahendriksen Mar 9, 2023
46fd8e5
Merge PR 1319 into wip-refactor-distance
ahendriksen Mar 9, 2023
d089e80
Merge branch 'branch-23.04' into wip-refactor-distance
cjnolet Mar 9, 2023
6d17ac4
Merge branch 'branch-23.04' into wip-refactor-distance
cjnolet Mar 10, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -317,8 +317,6 @@ if(RAFT_COMPILE_DIST_LIBRARY)
src/distance/cluster/kmeans_init_plus_plus_float.cu
src/distance/distance/specializations/detail/canberra_double_double_double_int.cu
src/distance/distance/specializations/detail/canberra_float_float_float_int.cu
src/distance/distance/specializations/detail/chebyshev_double_double_double_int.cu
src/distance/distance/specializations/detail/chebyshev_float_float_float_int.cu
src/distance/distance/specializations/detail/correlation_double_double_double_int.cu
src/distance/distance/specializations/detail/correlation_float_float_float_int.cu
src/distance/distance/specializations/detail/cosine_double_double_double_int.cu
Expand Down Expand Up @@ -352,6 +350,8 @@ if(RAFT_COMPILE_DIST_LIBRARY)
src/distance/distance/specializations/detail/l2_sqrt_unexpanded_double_double_double_int.cu
src/distance/distance/specializations/detail/l2_unexpanded_double_double_double_int.cu
src/distance/distance/specializations/detail/l2_unexpanded_float_float_float_int.cu
src/distance/distance/specializations/detail/l_inf_double_double_double_int.cu
src/distance/distance/specializations/detail/l_inf_float_float_float_int.cu
src/distance/distance/specializations/detail/lp_unexpanded_double_double_double_int.cu
src/distance/distance/specializations/detail/lp_unexpanded_float_float_float_int.cu
src/distance/distance/specializations/detail/russel_rao_double_double_double_int.cu
Expand Down
194 changes: 0 additions & 194 deletions cpp/include/raft/distance/detail/canberra.cuh

This file was deleted.

Loading