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 #pragma once
9 
10 #include <faiss/AutoTune.h>
11 #include <faiss/Index.h>
12 
13 namespace faiss {
14 namespace gpu {
15 
16 /// parameter space and setters for GPU indexes
17 struct GpuParameterSpace : faiss::ParameterSpace {
18     /// initialize with reasonable parameters for the index
19     void initialize(const faiss::Index* index) override;
20 
21     /// set a combination of parameters on an index
22     void set_index_parameter(
23             faiss::Index* index,
24             const std::string& name,
25             double val) const override;
26 };
27 
28 } // namespace gpu
29 } // namespace faiss
30