Skip to content

Commit

Permalink
sync with FB version 2017-08-09
Browse files Browse the repository at this point in the history
  • Loading branch information
mdouze committed Aug 9, 2017
1 parent 384d05c commit a5ef16d
Show file tree
Hide file tree
Showing 34 changed files with 1,767 additions and 1,337 deletions.
10 changes: 7 additions & 3 deletions AuxIndexStructures.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,13 @@ namespace faiss {
* RangeSearchResult
***********************************************************************/

RangeSearchResult::RangeSearchResult (size_t nq): nq (nq) {
lims = new size_t [nq + 1];
memset (lims, 0, sizeof(*lims) * (nq + 1));
RangeSearchResult::RangeSearchResult (idx_t nq, bool alloc_lims): nq (nq) {
if (alloc_lims) {
lims = new size_t [nq + 1];
memset (lims, 0, sizeof(*lims) * (nq + 1));
} else {
lims = nullptr;
}
labels = nullptr;
distances = nullptr;
buffer_size = 1024 * 256;
Expand Down
2 changes: 1 addition & 1 deletion AuxIndexStructures.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ struct RangeSearchResult {
size_t buffer_size; ///< size of the result buffers used

/// lims must be allocated on input to range_search.
explicit RangeSearchResult (size_t nq);
explicit RangeSearchResult (idx_t nq, bool alloc_lims=true);

/// called when lims contains the nb of elements result entries
/// for each query
Expand Down
2 changes: 1 addition & 1 deletion docs/html/1-Flat_8cpp_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;cstdio&gt;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &lt;faiss/IndexFlat.h&gt;</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &lt;IndexFlat.h&gt;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="keywordtype">int</span> main() {</div>
Expand Down
4 changes: 2 additions & 2 deletions docs/html/2-IVFFlat_8cpp_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,8 @@
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &lt;cassert&gt;</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &lt;faiss/IndexFlat.h&gt;</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#include &lt;faiss/IndexIVF.h&gt;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &lt;IndexFlat.h&gt;</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#include &lt;IndexIVF.h&gt;</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keywordtype">int</span> main() {</div>
Expand Down
4 changes: 2 additions & 2 deletions docs/html/3-IVFPQ_8cpp_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;cstdio&gt;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &lt;faiss/IndexFlat.h&gt;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &lt;faiss/IndexIVFPQ.h&gt;</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &lt;IndexFlat.h&gt;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &lt;IndexIVFPQ.h&gt;</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="keywordtype">int</span> main() {</div>
Expand Down
380 changes: 192 additions & 188 deletions docs/html/AuxIndexStructures_8cpp_source.html

Large diffs are not rendered by default.

14 changes: 7 additions & 7 deletions docs/html/AuxIndexStructures_8h_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="structfaiss_1_1RangeSearchResult.html#a39342ad2e9ad8b90f6e95dafd3287f49"> 38</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structfaiss_1_1RangeSearchResult.html#a39342ad2e9ad8b90f6e95dafd3287f49">buffer_size</a>; <span class="comment">///&lt; size of the result buffers used</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"></span><span class="comment"></span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> /// lims must be allocated on input to range_search.</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="structfaiss_1_1RangeSearchResult.html#a46e9fa31c3e232249cef508f357d856c">RangeSearchResult</a> (<span class="keywordtype">size_t</span> <a class="code" href="structfaiss_1_1RangeSearchResult.html#a29269b98c33af874d379ca4f62408b90">nq</a>);</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="structfaiss_1_1RangeSearchResult.html#a56dca2b151bcf16f5d488aff321b9501">RangeSearchResult</a> (idx_t <a class="code" href="structfaiss_1_1RangeSearchResult.html#a29269b98c33af874d379ca4f62408b90">nq</a>, <span class="keywordtype">bool</span> alloc_lims=<span class="keyword">true</span>);</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> /// called when lims contains the nb of elements result entries</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> /// for each query</span></div>
Expand Down Expand Up @@ -263,17 +263,17 @@
<div class="ttc" id="structfaiss_1_1IDSelectorBatch_html"><div class="ttname"><a href="structfaiss_1_1IDSelectorBatch.html">faiss::IDSelectorBatch</a></div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00076">AuxIndexStructures.h:76</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchResult_html_a29269b98c33af874d379ca4f62408b90"><div class="ttname"><a href="structfaiss_1_1RangeSearchResult.html#a29269b98c33af874d379ca4f62408b90">faiss::RangeSearchResult::nq</a></div><div class="ttdeci">size_t nq</div><div class="ttdoc">nb of queries </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00030">AuxIndexStructures.h:30</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchPartialResult_1_1QueryResult_html"><div class="ttname"><a href="structfaiss_1_1RangeSearchPartialResult_1_1QueryResult.html">faiss::RangeSearchPartialResult::QueryResult</a></div><div class="ttdoc">result structure for a single query </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00145">AuxIndexStructures.h:145</a></div></div>
<div class="ttc" id="structfaiss_1_1BufferList_html_a78b70417a9ba5b27553b3134f1190958"><div class="ttname"><a href="structfaiss_1_1BufferList.html#a78b70417a9ba5b27553b3134f1190958">faiss::BufferList::copy_range</a></div><div class="ttdeci">void copy_range(size_t ofs, size_t n, idx_t *dest_ids, float *dest_dis)</div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00081">AuxIndexStructures.cpp:81</a></div></div>
<div class="ttc" id="structfaiss_1_1BufferList_html_a78b70417a9ba5b27553b3134f1190958"><div class="ttname"><a href="structfaiss_1_1BufferList.html#a78b70417a9ba5b27553b3134f1190958">faiss::BufferList::copy_range</a></div><div class="ttdeci">void copy_range(size_t ofs, size_t n, idx_t *dest_ids, float *dest_dis)</div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00085">AuxIndexStructures.cpp:85</a></div></div>
<div class="ttc" id="structfaiss_1_1IDSelector_html"><div class="ttname"><a href="structfaiss_1_1IDSelector.html">faiss::IDSelector</a></div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00052">AuxIndexStructures.h:52</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchPartialResult_html_aa6639358995ac081f8a931a7790d0caf"><div class="ttname"><a href="structfaiss_1_1RangeSearchPartialResult.html#aa6639358995ac081f8a931a7790d0caf">faiss::RangeSearchPartialResult::set_result</a></div><div class="ttdeci">void set_result(bool incremental=false)</div><div class="ttdoc">called by range_search after do_allocation </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00144">AuxIndexStructures.cpp:144</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchPartialResult_html_ab6a385008493c7b630e4e7bc56e3da74"><div class="ttname"><a href="structfaiss_1_1RangeSearchPartialResult.html#ab6a385008493c7b630e4e7bc56e3da74">faiss::RangeSearchPartialResult::set_lims</a></div><div class="ttdeci">void set_lims()</div><div class="ttdoc">called by range_search before do_allocation </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00135">AuxIndexStructures.cpp:135</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchPartialResult_html_aa6639358995ac081f8a931a7790d0caf"><div class="ttname"><a href="structfaiss_1_1RangeSearchPartialResult.html#aa6639358995ac081f8a931a7790d0caf">faiss::RangeSearchPartialResult::set_result</a></div><div class="ttdeci">void set_result(bool incremental=false)</div><div class="ttdoc">called by range_search after do_allocation </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00148">AuxIndexStructures.cpp:148</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchPartialResult_html_ab6a385008493c7b630e4e7bc56e3da74"><div class="ttname"><a href="structfaiss_1_1RangeSearchPartialResult.html#ab6a385008493c7b630e4e7bc56e3da74">faiss::RangeSearchPartialResult::set_lims</a></div><div class="ttdeci">void set_lims()</div><div class="ttdoc">called by range_search before do_allocation </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00139">AuxIndexStructures.cpp:139</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchResult_html_a56dca2b151bcf16f5d488aff321b9501"><div class="ttname"><a href="structfaiss_1_1RangeSearchResult.html#a56dca2b151bcf16f5d488aff321b9501">faiss::RangeSearchResult::RangeSearchResult</a></div><div class="ttdeci">RangeSearchResult(idx_t nq, bool alloc_lims=true)</div><div class="ttdoc">lims must be allocated on input to range_search. </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00023">AuxIndexStructures.cpp:23</a></div></div>
<div class="ttc" id="structfaiss_1_1BufferList_html_af4d7ddcd77f328a12a7da89d8febe5d9"><div class="ttname"><a href="structfaiss_1_1BufferList.html#af4d7ddcd77f328a12a7da89d8febe5d9">faiss::BufferList::wp</a></div><div class="ttdeci">size_t wp</div><div class="ttdoc">write pointer in the last buffer. </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00109">AuxIndexStructures.h:109</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchResult_html_a46e9fa31c3e232249cef508f357d856c"><div class="ttname"><a href="structfaiss_1_1RangeSearchResult.html#a46e9fa31c3e232249cef508f357d856c">faiss::RangeSearchResult::RangeSearchResult</a></div><div class="ttdeci">RangeSearchResult(size_t nq)</div><div class="ttdoc">lims must be allocated on input to range_search. </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00023">AuxIndexStructures.cpp:23</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchResult_html_a944a93aecc7b51d8f9f35444280aa919"><div class="ttname"><a href="structfaiss_1_1RangeSearchResult.html#a944a93aecc7b51d8f9f35444280aa919">faiss::RangeSearchResult::distances</a></div><div class="ttdeci">float * distances</div><div class="ttdoc">corresponding distances (not sorted) </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00036">AuxIndexStructures.h:36</a></div></div>
<div class="ttc" id="structfaiss_1_1Index_html_a040c6aed1f224f3ea7bf58eebc0c31a4"><div class="ttname"><a href="structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4">faiss::Index::idx_t</a></div><div class="ttdeci">long idx_t</div><div class="ttdoc">all indices are this type </div><div class="ttdef"><b>Definition:</b> <a href="Index_8h_source.html#l00062">Index.h:62</a></div></div>
<div class="ttc" id="structfaiss_1_1IDSelectorRange_html"><div class="ttname"><a href="structfaiss_1_1IDSelectorRange.html">faiss::IDSelectorRange</a></div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00061">AuxIndexStructures.h:61</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchPartialResult_html_a954c26beebb561a6c2b0f399c48a9db3"><div class="ttname"><a href="structfaiss_1_1RangeSearchPartialResult.html#a954c26beebb561a6c2b0f399c48a9db3">faiss::RangeSearchPartialResult::new_result</a></div><div class="ttdeci">QueryResult &amp; new_result(idx_t qno)</div><div class="ttdoc">begin a new result </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00113">AuxIndexStructures.cpp:113</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchResult_html_a34c4ba599c0cec45972af19e1f98f22a"><div class="ttname"><a href="structfaiss_1_1RangeSearchResult.html#a34c4ba599c0cec45972af19e1f98f22a">faiss::RangeSearchResult::do_allocation</a></div><div class="ttdeci">virtual void do_allocation()</div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00033">AuxIndexStructures.cpp:33</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchPartialResult_html_a954c26beebb561a6c2b0f399c48a9db3"><div class="ttname"><a href="structfaiss_1_1RangeSearchPartialResult.html#a954c26beebb561a6c2b0f399c48a9db3">faiss::RangeSearchPartialResult::new_result</a></div><div class="ttdeci">QueryResult &amp; new_result(idx_t qno)</div><div class="ttdoc">begin a new result </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00117">AuxIndexStructures.cpp:117</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchResult_html_a34c4ba599c0cec45972af19e1f98f22a"><div class="ttname"><a href="structfaiss_1_1RangeSearchResult.html#a34c4ba599c0cec45972af19e1f98f22a">faiss::RangeSearchResult::do_allocation</a></div><div class="ttdeci">virtual void do_allocation()</div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8cpp_source.html#l00037">AuxIndexStructures.cpp:37</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchPartialResult_html"><div class="ttname"><a href="structfaiss_1_1RangeSearchPartialResult.html">faiss::RangeSearchPartialResult</a></div><div class="ttdoc">the entries in the buffers are split per query </div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00139">AuxIndexStructures.h:139</a></div></div>
<div class="ttc" id="structfaiss_1_1RangeSearchResult_html"><div class="ttname"><a href="structfaiss_1_1RangeSearchResult.html">faiss::RangeSearchResult</a></div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00029">AuxIndexStructures.h:29</a></div></div>
<div class="ttc" id="structfaiss_1_1BufferList_1_1Buffer_html"><div class="ttname"><a href="structfaiss_1_1BufferList_1_1Buffer.html">faiss::BufferList::Buffer</a></div><div class="ttdef"><b>Definition:</b> <a href="AuxIndexStructures_8h_source.html#l00103">AuxIndexStructures.h:103</a></div></div>
Expand Down
Loading

0 comments on commit a5ef16d

Please sign in to comment.