knn_sparse.hpp
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2019-2025, NVIDIA CORPORATION.
3  * SPDX-License-Identifier: Apache-2.0
4  */
5 
6 #pragma once
7 
9 #include <cuml/neighbors/knn.hpp>
10 
11 #include <cusparse_v2.h>
12 
13 namespace raft {
14 class handle_t;
15 }
16 
17 namespace ML {
18 namespace Sparse {
19 
20 constexpr int DEFAULT_BATCH_SIZE = 1 << 16;
21 
22 void brute_force_knn(raft::handle_t& handle,
23  const int* idx_indptr,
24  const int* idx_indices,
25  const float* idx_data,
26  size_t idx_nnz,
27  int n_idx_rows,
28  int n_idx_cols,
29  const int* query_indptr,
30  const int* query_indices,
31  const float* query_data,
32  size_t query_nnz,
33  int n_query_rows,
34  int n_query_cols,
35  int* output_indices,
36  float* output_dists,
37  int k,
38  size_t batch_size_index = DEFAULT_BATCH_SIZE,
39  size_t batch_size_query = DEFAULT_BATCH_SIZE,
41  float metricArg = 0);
42 }; // end namespace Sparse
43 }; // end namespace ML
void brute_force_knn(raft::handle_t &handle, const int *idx_indptr, const int *idx_indices, const float *idx_data, size_t idx_nnz, int n_idx_rows, int n_idx_cols, const int *query_indptr, const int *query_indices, const float *query_data, size_t query_nnz, int n_query_rows, int n_query_cols, int *output_indices, float *output_dists, int k, size_t batch_size_index=DEFAULT_BATCH_SIZE, size_t batch_size_query=DEFAULT_BATCH_SIZE, ML::distance::DistanceType metric=ML::distance::DistanceType::L2Expanded, float metricArg=0)
constexpr int DEFAULT_BATCH_SIZE
Definition: knn_sparse.hpp:20
DistanceType
Definition: distance_type.hpp:10
Definition: dbscan.hpp:18
Definition: dbscan.hpp:14