Faiss

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends
Public Member Functions | Public Attributes | List of all members
faiss::ParameterSpace Struct Reference

`#include <AutoTune.h>`

Inheritance diagram for faiss::ParameterSpace:

## Public Member Functions
size_t | n_combinations () const
| nb of combinations, = product of values sizes
bool | combination_ge (size_t c1, size_t c2) const
| returns whether combinations c1 >= c2 in the tuple sense
std::string | combination_name (size_t cno) const
| get string representation of the combination
void | display () const
| print a description on stdout
ParameterRange & | add_range (const char *name)
| add a new parameter (or return it if it exists)
virtual void | initialize (const Index *index)
| initialize with reasonable parameters for the index
void | set_index_parameters (Index *index, size_t cno) const
| set a combination of parameters on an index
void | set_index_parameters (Index *index, const char *param_string) const
| set a combination of parameters described by a string More...
virtual void | set_index_parameter (Index *index, const std::string &name, double val) const
| set one of the parameters
void | update_bounds (size_t cno, const OperatingPoint &op, double *upper_bound_perf, double *lower_bound_t) const
void | explore (Index *index, size_t nq, const float *xq, const AutoTuneCriterion &crit, OperatingPoints *ops) const

## Public Attributes
std::vector< ParameterRange > | parameter_ranges
| all tunable parameters
int | verbose
| verbosity during exploration
int | n_experiments
| nb of experiments during optimization (0 = try all combinations)
size_t | batchsize
| maximum number of queries to submit at a time.
bool | thread_over_batches
double | min_test_duration

## Detailed Description

Uses a-priori knowledge on the Faiss indexes to extract tunable parameters.

Definition at line 132 of file AutoTune.h.

## Member Function Documentation

void faiss::ParameterSpace::explore | ( | Index * | index,
|  | size_t | nq,
|  | const float * | xq,
|  | const AutoTuneCriterion & | crit,
|  | OperatingPoints * | ops
| ) |  | const

explore operating points

Parameters

  index | index to run on
  xq | query vectors (size nq * index.d)
  crit | selection criterion
  ops | resutling operating points

Definition at line 578 of file AutoTune.cpp.

void faiss::ParameterSpace::set_index_parameters | ( | Index * | index,
|  | const char * | param_string
| ) |  | const

set a combination of parameters described by a string

set a combination of parameters on an index

Definition at line 432 of file AutoTune.cpp.

void faiss::ParameterSpace::update_bounds | ( | size_t | cno,
|  | const OperatingPoint & | op,
|  | double * | upper_bound_perf,
|  | double * | lower_bound_t
| ) |  | const

find an upper bound on the performance and a lower bound on t for configuration cno given another operating point op

Definition at line 564 of file AutoTune.cpp.

## Member Data Documentation

double faiss::ParameterSpace::min_test_duration

run tests several times until they reach at least this duration (to avoid jittering in MT mode)

Definition at line 153 of file AutoTune.h.

bool faiss::ParameterSpace::thread_over_batches

use multithreading over batches (useful to benchmark independent single-searches)

Definition at line 149 of file AutoTune.h.

The documentation for this struct was generated from the following files:

- /tmp/faiss/AutoTune.h
- /tmp/faiss/AutoTune.cpp