#include <InvertedLists.h>
Public Member Functions | |
| MaskedInvertedLists (const InvertedLists *il0, const InvertedLists *il1) | |
| size_t | list_size (size_t list_no) const override |
| get the size of a list | |
| const uint8_t * | get_codes (size_t list_no) const override |
| const idx_t * | get_ids (size_t list_no) const override |
| void | release_codes (size_t list_no, const uint8_t *codes) const override |
| release codes returned by get_codes (default implementation is nop | |
| void | release_ids (size_t list_no, const idx_t *ids) const override |
| release ids returned by get_ids | |
| idx_t | get_single_id (size_t list_no, size_t offset) const override |
| const uint8_t * | get_single_code (size_t list_no, size_t offset) const override |
| void | prefetch_lists (const idx_t *list_nos, int nlist) const override |
Public Member Functions inherited from faiss::ReadOnlyInvertedLists | |
| ReadOnlyInvertedLists (size_t nlist, size_t code_size) | |
| size_t | add_entries (size_t list_no, size_t n_entry, const idx_t *ids, const uint8_t *code) override |
| void | update_entries (size_t list_no, size_t offset, size_t n_entry, const idx_t *ids, const uint8_t *code) override |
| void | resize (size_t list_no, size_t new_size) override |
Public Member Functions inherited from faiss::InvertedLists | |
| InvertedLists (size_t nlist, size_t code_size) | |
| virtual size_t | add_entry (size_t list_no, idx_t theid, const uint8_t *code) |
| add one entry to an inverted list | |
| virtual void | update_entry (size_t list_no, size_t offset, idx_t id, const uint8_t *code) |
| virtual void | reset () |
| void | merge_from (InvertedLists *oivf, size_t add_id) |
| move all entries from oivf (empty on output) | |
| double | imbalance_factor () const |
| 1= perfectly balanced, >1: imbalanced | |
| void | print_stats () const |
| display some stats about the inverted lists | |
| size_t | compute_ntotal () const |
| sum up list sizes | |
Public Attributes | |
| const InvertedLists * | il0 |
| const InvertedLists * | il1 |
Public Attributes inherited from faiss::InvertedLists | |
| size_t | nlist |
| number of possible key values | |
| size_t | code_size |
| code size per vector in bytes | |
Additional Inherited Members | |
Public Types inherited from faiss::InvertedLists | |
| typedef Index::idx_t | idx_t |
use the first inverted lists if they are non-empty otherwise use the second
This is useful if il1 has a few inverted lists that are too long, and that il0 has replacement lists for those, with empty lists for the others.
Definition at line 307 of file InvertedLists.h.
|
overridevirtual |
get the codes for an inverted list must be released by release_codes
Implements faiss::InvertedLists.
Definition at line 569 of file InvertedLists.cpp.
|
overridevirtual |
get the ids for an inverted list must be released by release_ids
Implements faiss::InvertedLists.
Definition at line 575 of file InvertedLists.cpp.
|
overridevirtual |
Reimplemented from faiss::InvertedLists.
Definition at line 600 of file InvertedLists.cpp.
|
overridevirtual |
Reimplemented from faiss::InvertedLists.
Definition at line 594 of file InvertedLists.cpp.
|
overridevirtual |
prepare the following lists (default does nothing) a list can be -1 hence the signed long
Reimplemented from faiss::InvertedLists.
Definition at line 607 of file InvertedLists.cpp.
1.8.5