Faiss
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends
IVFFlatScan.cuh
1 /**
2  * Copyright (c) Facebook, Inc. and its affiliates.
3  *
4  * This source code is licensed under the MIT license found in the
5  * LICENSE file in the root directory of this source tree.
6  */
7 
8 
9 #pragma once
10 
11 #include "../GpuIndicesOptions.h"
12 #include "../utils/Tensor.cuh"
13 #include <thrust/device_vector.h>
14 
15 namespace faiss { namespace gpu {
16 
17 class GpuResources;
18 
19 void runIVFFlatScan(Tensor<float, 2, true>& queries,
20  Tensor<int, 2, true>& listIds,
21  thrust::device_vector<void*>& listData,
22  thrust::device_vector<void*>& listIndices,
23  IndicesOptions indicesOptions,
24  thrust::device_vector<int>& listLengths,
25  int maxListLength,
26  int k,
27  bool l2Distance,
28  bool useFloat16,
29  // output
30  Tensor<float, 2, true>& outDistances,
31  // output
32  Tensor<long, 2, true>& outIndices,
33  GpuResources* res);
34 
35 } } // namespace