11 #ifndef FAISS_ON_DISK_INVERTED_LISTS_H
12 #define FAISS_ON_DISK_INVERTED_LISTS_H
61 std::vector<List> lists;
66 Slot (
size_t offset,
size_t capacity);
70 std::list<Slot> slots;
78 const char *filename);
80 size_t list_size(
size_t list_no)
const override;
81 const uint8_t *
get_codes (
size_t list_no)
const override;
82 const idx_t *
get_ids (
size_t list_no)
const override;
85 size_t list_no,
size_t n_entry,
86 const idx_t* ids,
const uint8_t *code)
override;
88 void update_entries (
size_t list_no,
size_t offset,
size_t n_entry,
89 const idx_t *ids,
const uint8_t *code)
override;
91 void resize (
size_t list_no,
size_t new_size)
override;
110 void update_totsize (
size_t new_totsize);
111 void resize_locked (
size_t list_no,
size_t new_size);
112 size_t allocate_slot (
size_t capacity);
113 void free_slot (
size_t offset,
size_t capacity);
const idx_t * get_ids(size_t list_no) const override
size_t code_size
code size per vector in bytes
const uint8_t * get_codes(size_t list_no) const override
size_t list_size(size_t list_no) const override
get the size of a list
size_t nlist
number of possible key values
void prefetch_lists(const long *list_nos, int nlist) const override