-
Notifications
You must be signed in to change notification settings - Fork 221
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Jegao/label host fix with main3 #549
Commits on Mar 29, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 68f1443 - Browse repository at this point
Copy the full SHA 68f1443View commit details -
Support per query filter (#279)
* Transferring Varun's chagges from external fork with squash merge * generating multiple gt's for each filter label + search with multiple filter labels (code cleanup) * supporting no-filter + one filter label + filter label file (multiple filters) while computing GT * generating multiple gt's + refactoring code for readability & cleanliness * adding more tests for filtered search * updating pr-test to test filtered cases * lowering recall requirement for disk index * transferred functions to filter_utils * adding more test for build and search without universal label * adding one_per_point distribution to generate_synthetic_labels + cleaning up artifacts after compute gt+ removing minor errors * refactoring search_disk_index to use a query filter vector --------- Co-authored-by: patelyash <patelyash@microsoft.com> Co-authored-by: Varun Sivashankar <t-varunsi@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for dfb8674 - Browse repository at this point
Copy the full SHA dfb8674View commit details -
Rebasing main's latest commits onto ravi/filter_support_rebased (#225)
- add code for two variants of filtered index, readme and CI tests - add utils for synthetic label generation and CI tests. * Add co-authors Co-authored-by: ravishankar <rakri@microsoft.com> Co-authored-by: Varun Sivashankar <t-varunsi@microsoft.com> --------- Co-authored-by: ravishankar <rakri@microsoft.com> Co-authored-by: David Kaczynski <dkaczynski@microsoft.com> Co-authored-by: Siddharth Gollapudi <t-gollapudis@microsoft.com> Co-authored-by: Neelam Mahapatro <nmahapatro@microsoft.com> Co-authored-by: Harsha Vardhan Simhadri <harshasi@microsoft.com> Co-authored-by: Harsha Vardhan Simhadri <harsha-simhadri@users.noreply.github.com> Co-authored-by: REDMOND\patelyash <patelyash@microsoft.com> Co-authored-by: Varun Sivashankar <t-varunsi@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 9a6e327 - Browse repository at this point
Copy the full SHA 9a6e327View commit details -
Clang-format now errors on push and PR if formatting is incorrect (#236)
* Rather than sift through all the *.cpp and *.h in the root directory, we're looking for only the sources in our main repository for formatting. Git submodules are excluded * Removing the --Werror flag only until we actually format all of the code in a future commit * We're choosing to base our style on the Microsoft style guide and not make any changes * Running format action on source code. Settling on Google styling. Settled on '.clang-format' instead of '_clang-format'. Fixed instructions such that only clang-format 12 is installed (13 changes SortIncludes options from true/false to a trinary set of options, none of which include the word 'false') * Enabling error on malformatted file * Revert "Enabling error on malformatted file" This reverts commit fa33e82. * Revert "Running format action on source code. Settling on Google styling. Settled on '.clang-format' instead of '_clang-format'. Fixed instructions such that only clang-format 12 is installed (13 changes SortIncludes options from true/false to a trinary set of options, none of which include the word 'false')" This reverts commit e0281be. * Trying again; formatting rules based on Google rules, disables sorting includes as that breaks us, and enabling check on build. * Somehow this was missed in the mass format. Formatting include/distance.h. * Manually fixing the formatting because clang-format wouldn't, but WOULD flag it as invalid
Configuration menu - View commit details
-
Copy full SHA for e77e0ce - Browse repository at this point
Copy the full SHA e77e0ceView commit details -
Fix typo in SSD index readme
Configuration menu - View commit details
-
Copy full SHA for cd8bee3 - Browse repository at this point
Copy the full SHA cd8bee3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4320bad - Browse repository at this point
Copy the full SHA 4320badView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c7c2b3 - Browse repository at this point
Copy the full SHA 6c7c2b3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 936922c - Browse repository at this point
Copy the full SHA 936922cView commit details -
Some fixes to pass internal building pipeline (#282)
Remove warnings affecting internal build pipelines --------- Co-authored-by: Yiyong Lin <yiyolin@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 066b9ed - Browse repository at this point
Copy the full SHA 066b9edView commit details -
Add support for multiple frozen points (#283)
* Add support for multiple frozen points * Add the missing parameters to the constructor.
Configuration menu - View commit details
-
Copy full SHA for 09e8404 - Browse repository at this point
Copy the full SHA 09e8404View commit details -
Added filtered disk index readme (#276)
* Added filtered disk index readme
Configuration menu - View commit details
-
Copy full SHA for 162d1ea - Browse repository at this point
Copy the full SHA 162d1eaView commit details -
Support per query filter (#279)
* Transferring Varun's chagges from external fork with squash merge * generating multiple gt's for each filter label + search with multiple filter labels (code cleanup) * supporting no-filter + one filter label + filter label file (multiple filters) while computing GT * generating multiple gt's + refactoring code for readability & cleanliness * adding more tests for filtered search * updating pr-test to test filtered cases * lowering recall requirement for disk index * transferred functions to filter_utils * adding more test for build and search without universal label * adding one_per_point distribution to generate_synthetic_labels + cleaning up artifacts after compute gt+ removing minor errors * refactoring search_disk_index to use a query filter vector --------- Co-authored-by: patelyash <patelyash@microsoft.com> Co-authored-by: Varun Sivashankar <t-varunsi@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 331b574 - Browse repository at this point
Copy the full SHA 331b574View commit details -
Configuration menu - View commit details
-
Copy full SHA for 308b377 - Browse repository at this point
Copy the full SHA 308b377View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5444f79 - Browse repository at this point
Copy the full SHA 5444f79View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c1a175 - Browse repository at this point
Copy the full SHA 6c1a175View commit details
Commits on Mar 30, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 0f5ec26 - Browse repository at this point
Copy the full SHA 0f5ec26View commit details -
Configuration menu - View commit details
-
Copy full SHA for 918d11f - Browse repository at this point
Copy the full SHA 918d11fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d2a007 - Browse repository at this point
Copy the full SHA 8d2a007View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9b46adc - Browse repository at this point
Copy the full SHA 9b46adcView commit details -
Configuration menu - View commit details
-
Copy full SHA for dde79a3 - Browse repository at this point
Copy the full SHA dde79a3View commit details -
Configuration menu - View commit details
-
Copy full SHA for a7c8db6 - Browse repository at this point
Copy the full SHA a7c8db6View commit details
Commits on Mar 31, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 6dd780c - Browse repository at this point
Copy the full SHA 6dd780cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 86ee064 - Browse repository at this point
Copy the full SHA 86ee064View commit details -
Fixing Build errors in remove_extra_typedef (#290)
remove _u, _s typedefs * converting uint64's to size_t where they represent array offsets --------- Co-authored-by: harsha vardhan simhadri <harsha.v.simhadri@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 6a43218 - Browse repository at this point
Copy the full SHA 6a43218View commit details
Commits on Apr 2, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 7b1553d - Browse repository at this point
Copy the full SHA 7b1553dView commit details
Commits on Apr 3, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 6833255 - Browse repository at this point
Copy the full SHA 6833255View commit details -
Configuration menu - View commit details
-
Copy full SHA for 29f53d0 - Browse repository at this point
Copy the full SHA 29f53d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 27d1653 - Browse repository at this point
Copy the full SHA 27d1653View commit details -
Configuration menu - View commit details
-
Copy full SHA for a1792e4 - Browse repository at this point
Copy the full SHA a1792e4View commit details -
Merge pull request #288 from jinwei14/codebookPassin
add codebook passing and pq/opq dim overwrite.
Configuration menu - View commit details
-
Copy full SHA for 4c8041b - Browse repository at this point
Copy the full SHA 4c8041bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9eb67b1 - Browse repository at this point
Copy the full SHA 9eb67b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for edf7e73 - Browse repository at this point
Copy the full SHA edf7e73View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1602cd5 - Browse repository at this point
Copy the full SHA 1602cd5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 844f751 - Browse repository at this point
Copy the full SHA 844f751View commit details -
Merge pull request #296 from jinwei14/overwrite_pq_dim
allow QD to overwrite derived pq dim from -B
Configuration menu - View commit details
-
Copy full SHA for b6eccbf - Browse repository at this point
Copy the full SHA b6eccbfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 12cbb4c - Browse repository at this point
Copy the full SHA 12cbb4cView commit details
Commits on Apr 4, 2023
-
Configuration menu - View commit details
-
Copy full SHA for dfe62f7 - Browse repository at this point
Copy the full SHA dfe62f7View commit details -
Merge pull request #297 from jinwei14/parametersImprove
[parameter enhancement] params pass in reference instead of const string
Configuration menu - View commit details
-
Copy full SHA for ed59551 - Browse repository at this point
Copy the full SHA ed59551View commit details
Commits on Apr 5, 2023
-
* updated dockerfile * add parallel build flag to dockerfile * Adds CI jobs to build our docker container (#302) * Adding a step that at least builds the docker container. I'm not yet sure how I want to actually integrate tests within the container, but at the least we should verify it builds * docker build needs a path. i honestly thought it defaulted to the CWD --------- Co-authored-by: Dax Pryce <daxpryce@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 5fd8871 - Browse repository at this point
Copy the full SHA 5fd8871View commit details -
Python API and Test Suite (#300)
* The first step in the python-api-enhancements branch. We need to fix a problem with the Parameters class with a double free or segfault on deletion. * Removing the parameters class in favor of the IndexRead and IndexWrite parameters classes. * API changes and python packaging changes for linux. It's almost ready for PR, but definitely ready for push. * Suppressing the CIBuildWheel step on windows * added in-mem static and dynamic index class to python bindings (#301) * Advancing our version number to 0.5.0 * Some more updates as per harsha's comments on PR #300. The diskann_bindings.cpp still need some more tlc and the wrapper needs to make use of it, and we also want to include some examples, but this is a good place to bring into main and then do further enhancements --------- Co-authored-by: Harsha Vardhan Simhadri <harsha-simhadri@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 592a874 - Browse repository at this point
Copy the full SHA 592a874View commit details
Commits on Apr 7, 2023
-
reducing number of L values for stitched search (#307)
* reducing number of L values for stitched search in CI
Configuration menu - View commit details
-
Copy full SHA for 8ec06fa - Browse repository at this point
Copy the full SHA 8ec06faView commit details
Commits on Apr 17, 2023
-
Configuration menu - View commit details
-
Copy full SHA for a41b078 - Browse repository at this point
Copy the full SHA a41b078View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7265a6e - Browse repository at this point
Copy the full SHA 7265a6eView commit details -
Fix building SSD index performance issue (#321)
Fix performance gap between in-mem and SSD based graph built by passing an appropriate number of threads. --------- Co-authored-by: Yiyong Lin <yiyolin@microsoft.com> Co-authored-by: Harsha Vardhan Simhadri <harsha-simhadri@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for d412c26 - Browse repository at this point
Copy the full SHA d412c26View commit details
Commits on Apr 20, 2023
-
remove the distance 0 warning in prune candidate the list, since disk…
…ann::cerr does not seem thread safe (#330)
Configuration menu - View commit details
-
Copy full SHA for 553110d - Browse repository at this point
Copy the full SHA 553110dView commit details
Commits on Apr 26, 2023
-
Set compile warning as error for core projects (#331)
* set(CMAKE_COMPILE_WARNING_AS_ERROR ON) --------- Co-authored-by: Yiyong Lin <yiyolin@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for afea659 - Browse repository at this point
Copy the full SHA afea659View commit details -
Create a data store abstraction (#305)
Create a virtual data store base class and a derived in-mem store class. In-mem index now uses the data store class. --------- Co-authored-by: Gopal Srinivasa <gopalsr@microsoft.com> Co-authored-by: ravishankar <rakri@microsoft.com> Co-authored-by: yashpatel007 <patelyash1311@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 3b4bf35 - Browse repository at this point
Copy the full SHA 3b4bf35View commit details -
Disabling Python builds (#338)
* Disabling Python builds debian stretch no longer seems to have valid apt repos - or at least not ones that we can access - which means our cibuildwheel is failing.
Configuration menu - View commit details
-
Copy full SHA for 45a5409 - Browse repository at this point
Copy the full SHA 45a5409View commit details
Commits on Apr 27, 2023
-
New python interface, build setup, apps and unit tests (#308)
--------- Co-authored-by: Dax Pryce <daxpryce@microsoft.com> * Adding some diagnostics to a pr build in an attempt to see what is going on with our systems prior to running our streaming/incremental tests * fix cast error and add some status prints to in-mem-dynamic app * Adding unit tests for both memory and disk index builder methods * After the refactor and polish of the API was left half done, I also left half a jillion bugs in the library. At least I'm confident that build_memory_index and StaticMemoryIndex work in some cases, whereas before they barely were getting off the ground * Sanity checks of static index (not comprehensive coverage), and tombstone file for test_dynamic_memory_index * Argument range checks of some of the static memory index values. * fixes for dynamic index in python interface (#334) * create separate default number of frozen points for dynamic indices * consolidate works * remove superfluous param from dynamic index * remove superfluous param from dynamic index * batch insert and args modification to apps * batch insert and args modification to apps * typo * Committing the updated unit tests. At least the initial sanity checks of StaticMemory are done * Fixing an error in the static memory index ctor * Formatting python with black * Have to disable initial load with DynamicMemoryIndex, as there is no way to build a memory index with an associated tags file yet, making it impossible to load an index without tags * Working on unit tests and need to pull harsha's changes * I think I aligned this such that we can execute it via command line with the right behaviors * Providing rest of parameters build_memory_index requires * For some reason argparse is allowing a bunch of blank space to come in on arguments and they need stripped. It also needs to be using the right types. * Recall test now works * More unit tests for dynamic memory index * Adding different range check for alpha, as the values are only really that realistic between 1 and 2. Below 1 is an error, and above 2 we'll probably make a warning going forward * Storing this while I cut a new branch and walk back some work for a future branch * Undoing the auto load of the dynamic index until I can debug why my tag vector files cause an error in diskann * Updating the documentation for the python bindings. It's a lot closer than it was. * Fixing a unit test * add timers to dyanmic apps (#337) * add timers to dyanmic apps * clang format * np.uintc vs. int for dtype of tags * fixes to types in dynamic app * cast tags to np.uintc array * more timers * added example code in comments in app file * round elapsed * fix typo * fix typo --------- Co-authored-by: Harsha Vardhan Simhadri <harsha-simhadri@users.noreply.github.com> Co-authored-by: harsha vardhan simhadri <harsha.v.simhadri@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 38d8c44 - Browse repository at this point
Copy the full SHA 38d8c44View commit details
Commits on Apr 28, 2023
-
Harshasi/timer python app (#341)
* added timer and QPS to static search app * search only option to static index * search only option to static index * exposing metric in static function
Configuration menu - View commit details
-
Copy full SHA for 543da4e - Browse repository at this point
Copy the full SHA 543da4eView commit details
Commits on May 9, 2023
-
Force error on warnings and add casts to test directory (#342)
* Force error on warnings and add casts to test directory * Use size_t for index of point IDs * Refactor iterator and conditions for printing labels --------- Co-authored-by: David Kaczynski <dkaczynski@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 3db6139 - Browse repository at this point
Copy the full SHA 3db6139View commit details -
Enable Windows python bindings (#343)
* Use int64 for counter to fix windows compilation error * Fix windows python bindings by adding install_lib command to move windows build output into python package * Update to use Path instead of os * Change batch_insert num_inserts signature to signed type for OpenMP compatibility * Update num_inserts to int32_t per PR request --------- Co-authored-by: Nick Caurvina <nicaurvi@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for b011dcb - Browse repository at this point
Copy the full SHA b011dcbView commit details
Commits on May 10, 2023
-
Use new macro(ENABLE_CUSTOM_LOGGER) to turn on Custom logger (#345)
* custom logger --------- Co-authored-by: Yiyong Lin <yiyolin@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 86dcb35 - Browse repository at this point
Copy the full SHA 86dcb35View commit details
Commits on May 22, 2023
-
updting from std cpp 14 to cpp 17 (#352)
* updting from std cpp 14 to cpp 17 * adding cmake_cxx_standard flag
Configuration menu - View commit details
-
Copy full SHA for 96aaa1c - Browse repository at this point
Copy the full SHA 96aaa1cView commit details -
* Refactored the build processes. Broke things into components as much as possible. We have standalone actions for the build processes to make sure they are consistent across push or PR builds, a format-check that doesn't rely on cmake to be there to work, and centralized our randomized data generation into a single action that can be called in each section. We now are reusing as many of the steps as we can without copy/pasting, which should ensure we're not making mistakes. * Fixing the dynamic tests, the paths to the data were wrong --------- Co-authored-by: yashpatel007 <patelyash1311@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for c7b2907 - Browse repository at this point
Copy the full SHA c7b2907View commit details
Commits on May 24, 2023
-
Fix the disparity between disk and memory search for Universal label (#…
…347) * UNV Search Fix for Memory * two places to update * clang format * unify find_common_filters function * fix comments - only return size of common filters from the find_common_filters function * dummy comments * clang format * Reduce repetitive calls * changing name and return type of function
Configuration menu - View commit details
-
Copy full SHA for 16ea746 - Browse repository at this point
Copy the full SHA 16ea746View commit details
Commits on May 30, 2023
-
Remove compute_groundtruth from labels.yml (#363)
Co-authored-by: Yiyong Lin <yiyolin@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for fdc38c9 - Browse repository at this point
Copy the full SHA fdc38c9View commit details -
Handle some corner cases in generate_cache_list_from_sample_queries (#…
…361) Co-authored-by: Yiyong Lin <yiyolin@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 129ffe1 - Browse repository at this point
Copy the full SHA 129ffe1View commit details
Commits on Jun 1, 2023
-
Reduce the size of coord_scratch in SSDQueryScratch to reduce memory …
…usage (#362) * Remove useless coord_scratch in SSDQueryScratch to reduce memory usage --------- Co-authored-by: Yiyong Lin <yiyolin@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for ddad4b9 - Browse repository at this point
Copy the full SHA ddad4b9View commit details -
Upload data and binary files to artifact in CI workflows (#366)
* Upload data and binary files to artifact so that we could debug issue locally when the workflows fails * use different artifact name for different scenarios --------- Co-authored-by: Yiyong Lin <yiyolin@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for a473b16 - Browse repository at this point
Copy the full SHA a473b16View commit details -
Python Type Enhancements (#364)
* Adding cosine distance - I didn't know we had that as a first level distance metric * Making our mkl and iomp linking game more rigorously defined for the ubuntus * Included latest as a path fragment twice on accident * libmkl_def.so is named something different when installed via the intel oneapi installer * Making a number of changes to homogenize our api (same parameters, minimize parameters as much as possible, etc) * Stashing this and going to work on the CICD stuff, it's driving me nuts * Fairly happy with the Python API now. Documentation needs another pass, the @Overloads in the .pyi files need to be addressed, and documentation checked again. The apps folder also needs updating to use fire instead of argparse * Updated build to not use tcmalloc for pybind, as well as fixed the pyproject.toml so that cibuildwheel can actually successfully build our project. * Making a change to in-mem-static for the new api and also adjusting the comment in in-mem-dynamic a bit, though... I probably shouldn't have
Configuration menu - View commit details
-
Copy full SHA for db61936 - Browse repository at this point
Copy the full SHA db61936View commit details -
Add unit test project based on boost_unit_test_framework (#365)
* Add unit test project based on boost_unit_test_framework * Add another dockerfile for developers * update path --------- Co-authored-by: Yiyong Lin <yiyolin@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 0acff41 - Browse repository at this point
Copy the full SHA 0acff41View commit details
Commits on Jun 12, 2023
-
Fix inefficiency in constructing reverse label map (#373)
* single loop for reverse label map * clang formatting * unnecessary comments removed * minor --------- Co-authored-by: Varun Sivashankar <t-varunsi@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for fcd1f9c - Browse repository at this point
Copy the full SHA fcd1f9cView commit details
Commits on Jun 15, 2023
-
fixed a bug with loading medoids for sharded filtered index, and adde… (
#368) * fixed a bug with loading medoids for sharded filtered index, and added better caching for filtered index clang-format fixed minor cout error addressed Yiyong's comments, and fixed a bug for finding medoid in sharded+filtered index Fixed windows compile error (warnings) Fix inefficiency in constructing reverse label map (#373) * single loop for reverse label map * clang formatting * unnecessary comments removed * minor --------- Co-authored-by: Varun Sivashankar <t-varunsi@microsoft.com> clang-formatted * minor cleanup * clang-format --------- Co-authored-by: ravishankar <rakri@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for b4050de - Browse repository at this point
Copy the full SHA b4050deView commit details
Commits on Jun 22, 2023
-
patelyash/index factory (#340)
* gi# This is a combination of 2 commits. remove _u, _s typedefs * added some seed files * add seed files * New distance metric hierarchy * Refactoring changes * Fixing compile errors in refactored code * Fixing compile errors * DiskANN Builds with initial refactoring changes * Saving changes for Ravi * More refactoring * Refactor * Fixed most of the bugs related to _data * add seed files * gi# This is a combination of 2 commits. remove _u, _s typedefs * added some seed files * New distance metric hierarchy * Refactoring changes * Fixing compile errors in refactored code * Fixing compile errors * DiskANN Builds with initial refactoring changes * Saving changes for Ravi * More refactoring * Refactor * Fixed most of the bugs related to _data * Post merge with main * Refactored version which compiles on Windows * now compiles on linux * minor clean-up * minor bug fix * minor bug * clang format fix + build error fix * clang format fix * minor changes * added back the fast_l2 feature * added back set_start_points in index.cpp * Version for review * Incorporating Harsha's comments - 2 * move implementation of abstract data store methods to a cpp file * clang format * clang format * Added slot manager file (empty) and fixed compile errors * fixed a linux compile error * clang * debugging workflow failure * clang * more debug * more debug * debug for workflow * remove slot manager * Removed the #ifdef WINDOWS directive from class definitions * Refactoring alignment factor into distance hierarchy * Fixing cosine distance * Ensuring we call preprocess_query always * Fixed distance invocations * fixed cosine bug, clang-formatted * cleaned up and added comments * clang-formatted * more clang-format * clang-format 3 * remove deleted code in scratch.cpp * reverted clang to Microsoft * small change * Removed slot_manager from this PR * newline at EOF in_mem_Graph_store.cpp * rename distance_metric to distance_fn * resolving PR comments * minor bug fix for initialization * creating index_factory * using index factory to build inmem index * clang format fix * minor bug fix * fixing build error * replacing mem_store with abstract_mem_store + injecting data_store to Index * minor fix * clang format fix * commenting data_store injection to prevent double invocation and mem leak (for now) * fixing the build for fiters * moving abstract index to abstract_index.h * IndexBuildParamsbuilder to build IndexBuildParams properly with error checking * fixing build errors * fixing minor error * refactoring index search to be simple * clang format fix * refactoring search_mem_index to use index factory * clang fix * minor fix * minor fix for build * optimize for fast l2 restore * removing comments * removing comments * adding templating to IndexFactory (can't avoide it anymore) * fixing build error * fixing ubuntu build error * ubuntu build exception fix * passing num_pq_bytes * giving one more shot to config dricen arch with boost::any (type erasure) * clang fix * modifying search to use boost::any * fixing ubuntu build errors/warning * created indexconfigbuilder and fixed a typo * fixing error in pq build * some comments + lazy_delete impl * bumping to std c++17 & replacing boost::any with std::any * clang fix * c++ std 17 for ubuntu * minor fix * converting search to batch_search + A vector wrapper using std::any to store vector as a shared ptr * adding AnyVector to encapsulate vector in std::any + adding basic yaml parser(WIP) * adding wrapper code for vector and set, checked with Andrija * fixinh ubuntu build error * trying to resolve ubuntu build error * testing test streaming index with IndexFactory * fixing ubuntu build error * fixing search for test insert delete consolidate * refactored test_streaming_scenario * refactored test_insert_delete_consolidate to use AbstractIndex and Indexfactory * fixing ubuntu build error * making build method in abstract index consistent * some code cleanup + abstract_cpp to add implementation * remoing coments and code cleanup * build error fix * fixing -Wreorder warning * separating build structs to their header + refactor search and remove batch search * fixing ubuntu build errors * resolving segfault error from search_mem_index * fixing query_result_tag allocation * minor update * search fix * trying to fix windows latest build for dynamic index * ading temp loggin to debug windows latest build issue * removing logging for debug * fixning windows latest build error for dynamix index search * moving any wrappers to separate file + organizing code * fixing check error * updating private vsr naming convention * minor update * unravelig search methods in abstract index. Iteraton 1 * minor fix * unused vars remove * returning a unique_ptr to Abstract Index from index factory * adding implementation from abstract_index.h to abstract_index.cpp * making abstract index api to be more explicit (expriment) * some code cleanup * removing detected memory leaks (free up index) * separtaing enums for data and graph stratagy * Index ctor(config) now uses injected datastore from IndexFactory * distance in index population in new config ctor * resolving some comments from Andrija * Resolving some restructuring comments by Andrija * minor fix * fixing ubuntu build error * warning fix * simplified get() in anywrappers * making index config a unique ptr and owned by IndexFactory * removing complex if/else calling recursively + added unimplemented TagT to AbsIdx * renaming get_instance to create_instance * clang format fix * removing const_cast from any_wrapper * fixing andrija's comments * removing warnings --------- Co-authored-by: harsha vardhan simhadri <harsha.v.simhadri@gmail.com> Co-authored-by: Gopal Srinivasa <gopalsr@microsoft.com> Co-authored-by: ravishankar <rakri@microsoft.com> Co-authored-by: Harsha Vardhan Simhadri <harsha-simhadri@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 1ac95d2 - Browse repository at this point
Copy the full SHA 1ac95d2View commit details
Commits on Jun 26, 2023
-
patelyash/index factory (#340) (#380)
--------- Co-authored-by: Yash Patel <47032340+yashpatel007@users.noreply.github.com> Co-authored-by: harsha vardhan simhadri <harsha.v.simhadri@gmail.com> Co-authored-by: Gopal Srinivasa <gopalsr@microsoft.com> Co-authored-by: ravishankar <rakri@microsoft.com> Co-authored-by: Harsha Vardhan Simhadri <harsha-simhadri@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 0c71838 - Browse repository at this point
Copy the full SHA 0c71838View commit details
Commits on Jun 27, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 2b50d8e - Browse repository at this point
Copy the full SHA 2b50d8eView commit details
Commits on Jun 28, 2023
-
some bug fix when enable the EXEC_EnV_OLS (#377)
* some bug fix when enable the EXEC_EnV_OLS * avoid unit test failure * unit test testing * changed based on gopal's suggestion * update load_impl(AlignedFileReader &reader) * change the load_impl to be identical to objectstore * remvoe blank
Configuration menu - View commit details
-
Copy full SHA for d6d2719 - Browse repository at this point
Copy the full SHA d6d2719View commit details -
Output distance file in memory index search (#382)
* Output distance file * fix --------- Co-authored-by: Shengjie Qian <shenqian@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 132b62a - Browse repository at this point
Copy the full SHA 132b62aView commit details
Commits on Jun 29, 2023
-
Add WIN macro for non-win function (#360)
* Add WIN macro for non-win funtion * fix vc16 compile issue * fix compile issue * fix compile issue * fix compile issue * clean up code
Configuration menu - View commit details
-
Copy full SHA for 775a9e9 - Browse repository at this point
Copy the full SHA 775a9e9View commit details
Commits on Jul 5, 2023
-
small EXEC_ENV_OLS bug fix (#387)
* small bug fix * test ubuntu fail * formatting * re-triggering unitest
Configuration menu - View commit details
-
Copy full SHA for 051df41 - Browse repository at this point
Copy the full SHA 051df41View commit details
Commits on Jul 7, 2023
-
* Refactor of diskannpy module code. * 0.5.0.rc1 for python and enabling the build-python portion of the pr-test process. * clang-format changes * In theory this should speed up the python build drastically by only building the wheel for the python version and OS we're attempting to fan out to in our CICD job tree * Missed a dollar sign * Copy/pasting left a CICD step name that implied we were running a code formatting check when instead we were building a wheel. This is now fixed. * In theory, readying the release action too. We won't know if it works until it merges and we cut a release, but at least the paths have been fixed * Designated initializers just happened to work on linux but shouldn't have as they weren't added until cpp20 * Formatting
Configuration menu - View commit details
-
Copy full SHA for 720a809 - Browse repository at this point
Copy the full SHA 720a809View commit details
Commits on Jul 10, 2023
-
Jinweizhang/filter paramsfix (#388)
* small bug fix * test ubuntu fail * formatting * re-triggering unitest * cause error, remove two character params * cause error, remove two character params * unit test fix * clean up code * add more accurate error handelling * fix filter build * re-trigger test * try lower recall number * test witl more value * revert back to test unit test
Configuration menu - View commit details
-
Copy full SHA for 579ad62 - Browse repository at this point
Copy the full SHA 579ad62View commit details -
Github actions fix: composite action `python-wheel` publishes wheels to the `wheels` artifact. `python-release` workflow then looks for it in the `dist` artifact, which does not exist. This is a CICD change only.
Configuration menu - View commit details
-
Copy full SHA for bc167d1 - Browse repository at this point
Copy the full SHA bc167d1View commit details
Commits on Jul 12, 2023
-
* Fixed inputs type-o * Action 'checkout@v2' is deprecated
Configuration menu - View commit details
-
Copy full SHA for bbed8f8 - Browse repository at this point
Copy the full SHA bbed8f8View commit details -
Trying a new release of the python lib to see if there was a packaging error in the publication of rc1.
Configuration menu - View commit details
-
Copy full SHA for a7b2087 - Browse repository at this point
Copy the full SHA a7b2087View commit details
Commits on Jul 17, 2023
-
Fixed param documentation (#393)
* Fixed param name in comments * Hide rust/target
Configuration menu - View commit details
-
Copy full SHA for 233c08c - Browse repository at this point
Copy the full SHA 233c08cView commit details -
Bypass errors in logging for non-msft-prod environments (#392)
* Removed the logger and verified that the logging capability is the root cause of our consistent segfault errors in python. Perhaps it also will fix any issues in our label test too? I'd like to push it to GH and see. * Formatting fixes * Revert "Formatting fixes" This reverts commit 9042595. * Revert "Removed the logger and verified that the logging capability is the root cause of our consistent segfault errors in python. Perhaps it also will fix any issues in our label test too? I'd like to push it to GH and see." This reverts commit 7561009. * The custom logging implementation is causing segfaults in python. We're not sure exactly where, but this is the easiest and quickest way to getting a working python release. * All the integration tests are failing, and there's a chance the virtual dtor on AbstractDataStore might be the culprit, though I am not sure why. I'm hoping it is so it won't fall on the logging changes. * Formatting. Again.
Configuration menu - View commit details
-
Copy full SHA for f636da4 - Browse repository at this point
Copy the full SHA f636da4View commit details
Commits on Jul 19, 2023
-
Improve help formatting in CLI tools (#390)
* Added utilities to standardize help across cli tools. #370 * Made three option groupings (required/optional/print) * Moved common parameter descriptions to a common file. #370 * Updated usage statement for search_disk_app #370 * Updated range_search_disk_index to use the new required/optional format. #370 * Updated test apps to use the new help format. #370 * Fixed format issue. #370 * Updated help format for the 'build' apps. #370 * Fixed code formatting. #370 * Added src/*.hpp to the clang format. #370 * Moved header into the headers directory. #370 * Added missing configs. #370 * Removed superflous paths from include. #370 * Added #pragma once. #370 * Type-o fixes. #370 * Fixed capitolization of constant. #370 * Make fail_if_recall description more accurate. #370 * Changed to using set notation. #370 * Better explanations for some options. #370 * Added short explanation of file format. #370 --------- Co-authored-by: Jon McLean <none@example.com> Co-authored-by: Jonathan McLean <Jonathan.McLean@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 2c9912a - Browse repository at this point
Copy the full SHA 2c9912aView commit details
Commits on Jul 20, 2023
-
Python build with a far more portable wheel (#396)
* Identified the appropriate build flags to get a working python build that doesn't rely on -march=native or -mtune=native. We've run benchmarks on multiple computers that indicate the only important flag other than -mavx2 -msse2 -mfma is -funroll-loops. Optimization levels such as -O1, -O2, or -O3 actually makes for less performant code. -Ofast is unavailble for use in Python, as it causes problems with floating point math in Python * 1.22 was left in a comment despite 1.25 being the value specified * Python 3.8 is not supported by numpy 1.25, so we're removing it.
Configuration menu - View commit details
-
Copy full SHA for 89ec326 - Browse repository at this point
Copy the full SHA 89ec326View commit details -
* Work-in-progress commit adding JSON output for timings. in-mem-static is complete * Added timings to dynamic and total-time to static
Configuration menu - View commit details
-
Copy full SHA for 1de9cb3 - Browse repository at this point
Copy the full SHA 1de9cb3View commit details
Commits on Jul 21, 2023
-
Using the correct README for our publication to pypi.
Configuration menu - View commit details
-
Copy full SHA for dea70fc - Browse repository at this point
Copy the full SHA dea70fcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5bb07e4 - Browse repository at this point
Copy the full SHA 5bb07e4View commit details
Commits on Jul 24, 2023
-
Jinwei/fix in memory compile error (#401)
* small bug fix * test ubuntu fail * formatting * re-triggering unitest * add small fix for in_mem_data_store when EXEC_ENV_OLS is enabed
Configuration menu - View commit details
-
Copy full SHA for 0488c03 - Browse repository at this point
Copy the full SHA 0488c03View commit details
Commits on Jul 26, 2023
-
fix: use the passed in io_limit (#403)
* fix: use the passed in io_limit * fix to be clang-formatted
Configuration menu - View commit details
-
Copy full SHA for e1a8d78 - Browse repository at this point
Copy the full SHA e1a8d78View commit details -
DynamicMemoryIndex bug fixes (#404)
* While simply creating a unit test to repro Issue #400, I found a number of bugs that I needed to address just to get it to work the way I had intended. This does not yet have what I would consider a comprehensive suite of test coverage for the DynamicMemoryIndex, but we at least do save it with the metadata file, we can load it correctly, and saving *always* consolidate_deletes() prior to save if any item has been marked for deletion prior to save. * We actually cannot save without compacting before save anyway. Removing the parameter from save() and hardcoding it to True until we can actually support it. * Addressing some PR comments and readying a 0.5.0.rc5 release
Configuration menu - View commit details
-
Copy full SHA for 44445de - Browse repository at this point
Copy the full SHA 44445deView commit details
Commits on Aug 1, 2023
-
Pass nullptr as nullT when creating thread_data that's of ConcurrentQ…
…ueue<SSDThreadData*> type, otherwise the default null_T is uninitialized, could point to arbitraty memory (#408)
Configuration menu - View commit details
-
Copy full SHA for 1eac702 - Browse repository at this point
Copy the full SHA 1eac702View commit details
Commits on Aug 2, 2023
-
Preparing for 0.6.0 diskannpy release (#407)
* Some early staging for README updates and pyproject updates for a 0.6.0 release for diskannpy. * Trying to fix the CI badge to point toward main's latest build * Updating documentation for pdoc generation * Documentation updates. Tightened up the API to drop list support (there were entirely too many cases where it wouldn't work, and it's easier to just tell people to convert it themselves) * Some module reorganization to make pdoc actually display the docstrings for variables re-exported at the top level * A copy paste happened that shouldn't have. * Updating the apps to use the new 0.6.0 api * Addressing PR feedback * Some of the documentation changes didn't get made in both from_file or the constructor
Configuration menu - View commit details
-
Copy full SHA for 06fc0b7 - Browse repository at this point
Copy the full SHA 06fc0b7View commit details
Commits on Aug 4, 2023
-
Added PDoc workflow to publish github pages documentation (#412)
* Added PDoc workflow * Added documentation to the push-test workflow * Added diskannpy to the env for pdoc to use * Initial commit of doc publish workflow * Tried heredoc to get python version * Tried another way of getting the version * Tried another way of getting the version * Moved to docs/python path * Removing the test harness * Add dependencies per wheel * Moved dependency tree to the 'push' file so it runs on push * Added label name to the dependency file * Trying maxtrix.os to get the os and version * Moved doc generation from push-test to python-release. Will add 'dev' doc generation to push-test * Publish latest/version docs only on release. Publish docs for every dev build on main. * Install the local-file version of the library * Disable branch check so I can test the install * Use python build to build a wheel for use in documentation * Tried changing to python instead of python3 * Added checkout depth in order to get boost * Use the python build action to create wheel for documentation * Revert "Use the python build action to create wheel for documentation" This reverts commit d900c1d. * Added linux environment setup * Made only publish dev when on main and added comments --------- Co-authored-by: Jonathan McLean <Jonathan.McLean@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 3f58b99 - Browse repository at this point
Copy the full SHA 3f58b99View commit details
Commits on Aug 8, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 637ed51 - Browse repository at this point
Copy the full SHA 637ed51View commit details -
moved ssd index defaults to defaults.h (#415)
* moved ssd index constants to defaults.h
Configuration menu - View commit details
-
Copy full SHA for b572571 - Browse repository at this point
Copy the full SHA b572571View commit details
Commits on Aug 11, 2023
-
* Have a working dockerfile to run perf tests and report the times they take. We can also capture stdout/stderr with it for further information, especially for tools that report internal latencies. * Slight changes to the perf test script, a perf.yml for the github action
Configuration menu - View commit details
-
Copy full SHA for c729e5c - Browse repository at this point
Copy the full SHA c729e5cView commit details
Commits on Aug 14, 2023
-
allow multi-sector layout for large vectors (#417)
* make sector node an inline function * convert offset_node macro to inline method * rename member vars to start with underscore in pq_flash_index.h * added support in create_disk_index * add read sector util * load_cache_list now uses read_blocks util * allow nullptr for read_nodes * BFS cache generation uses util * add num_sectors info to cache_beam_Search * add CI test for 1020,1024,1536D float and 4096D int8 rand vector on disk
Configuration menu - View commit details
-
Copy full SHA for 977dd3c - Browse repository at this point
Copy the full SHA 977dd3cView commit details
Commits on Aug 15, 2023
-
Consolidate Index Constructors (#418)
* initial commit * updating python bindings to use new ctor * python binding error fix * error fix * reverting some changes -> experiment * removing redundnt code from native index * python build error fix * tyring to resolve python build error * attempt at python build fix * adding IndexSearchParams * setting search threads to non zero * minor check removed * eperiment 3-> making distance fully owned by data_store * exp 3 clang fix * exp 4 * making distance as unique_ptr * trying to fix build * finally fixing problem * some minor fix * adding dll export to index_factory static function * adding dll export for static fn in index_factory * code cleanup * resolving gopal's comments * resolving build failures
Configuration menu - View commit details
-
Copy full SHA for 6d4e2bf - Browse repository at this point
Copy the full SHA 6d4e2bfView commit details -
Add convenience functions for parsing the PQ index (#349)
* move read_nodes to public, add get_pq_vector and get_num_points * clang-format * Match new private var naming convention * more private (_) fixes * VID->vid * VID->vid cpp
Configuration menu - View commit details
-
Copy full SHA for 39b3330 - Browse repository at this point
Copy the full SHA 39b3330View commit details
Commits on Aug 17, 2023
-
* fix OLS build * Add a build to CI with feature flags enabled
Configuration menu - View commit details
-
Copy full SHA for df7c530 - Browse repository at this point
Copy the full SHA df7c530View commit details -
* inmem_graph_store initial impl * barebones of in mem graph store * refactoring index to use index factory * clang format fix * making enum to enum class (c++ 11 style) for scope resolution with same enum values * cleaning up API for GraphSore * moving _nd back to index class * resolving PR comments * error fix * error fix for dynamic * resolving PR comments * removing _num_frozen_point from graph store * minor fix * moving _start back to main + minor update in graph store api to support that * adding requested changes from Gopal * removing reservations * resolving namespace resolution for defaults after build failure * minor update * minor update * speeding up location update logic while repositioning * updated with reserving mem for graph neighbours upfront * build error fix * minor update in assert * initial commit * updating python bindings to use new ctor * python binding error fix * error fix * reverting some changes -> experiment * removing redundnt code from native index * python build error fix * tyring to resolve python build error * attempt at python build fix * adding IndexSearchParams * setting search threads to non zero * minor check removed * eperiment 3-> making distance fully owned by data_store * exp 3 clang fix * exp 4 * making distance as unique_ptr * trying to fix build * finally fixing problem * some minor fix * adding dll export to index_factory static function * adding dll export for static fn in index_factory * code cleanup * resolving errors after merge * resolving build errors * fixing build error for stitched index * resolving build errors * removing max_observed_degree set() * removing comments + typo fix * replacing add_neighbour with set_neighbours where we can * error fix
Configuration menu - View commit details
-
Copy full SHA for 4162c21 - Browse repository at this point
Copy the full SHA 4162c21View commit details
Commits on Aug 22, 2023
-
Undo mistake, let frontier read in PQ flash index be asynchronous (#434)
* Undo mistake, let frontier read in PQ flash index be asynchronous * address changes requested
Configuration menu - View commit details
-
Copy full SHA for 9d5fde1 - Browse repository at this point
Copy the full SHA 9d5fde1View commit details -
Reduce CI tests for multi-sector disk layout from 10K to 5K points so… (
#439) * Reduce CI tests for multi-sector disk layout from 10K to 5K points so they run faster * turn off 1024D
Configuration menu - View commit details
-
Copy full SHA for fee17e6 - Browse repository at this point
Copy the full SHA fee17e6View commit details
Commits on Aug 23, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 9622d8f - Browse repository at this point
Copy the full SHA 9622d8fView commit details
Commits on Aug 24, 2023
-
Configuration menu - View commit details
-
Copy full SHA for b05c2dc - Browse repository at this point
Copy the full SHA b05c2dcView commit details
Commits on Aug 28, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 98b119a - Browse repository at this point
Copy the full SHA 98b119aView commit details -
Remove IndexWriteParams from build method. (#441)
* removing write_params from buidl and taking it upfront in Index Ctor * renaming build_params to filter params
Configuration menu - View commit details
-
Copy full SHA for 8afb38a - Browse repository at this point
Copy the full SHA 8afb38aView commit details
Commits on Aug 29, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 353e538 - Browse repository at this point
Copy the full SHA 353e538View commit details
Commits on Aug 30, 2023
-
working draft PR for cleaning up disk based filter search (#414)
* made changes to clean up filter number conversion, and fixed bug with universal filter search * minor typecast fix --------- Co-authored-by: rakri <rakri@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for fa6c279 - Browse repository at this point
Copy the full SHA fa6c279View commit details -
Fixes #432, bug in using openmp with gcc and omp_get_num_threads() (#445
) * Fixes #432, bug in using openmp with gcc and omp_get_num_threads() only reporting the number of threads collaborating on the current code region not available overall. I made this error and transitioned us from omp_get_num_procs() about 5 or 6 months ago and only with bug #432 did I really get to see how problematic my naive expectations were. * Removed cosine distance metric from disk index until we can properly fix it in pqflashindex. Documented what distance metrics can be used with what vector dtypes in tables in the documentation.
Configuration menu - View commit details
-
Copy full SHA for a112411 - Browse repository at this point
Copy the full SHA a112411View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c31367 - Browse repository at this point
Copy the full SHA 4c31367View commit details
Commits on Aug 31, 2023
-
Configuration menu - View commit details
-
Copy full SHA for b8b6caf - Browse repository at this point
Copy the full SHA b8b6cafView commit details
Commits on Sep 22, 2023
-
Build streaming index of labeled data (#376)
* Add bool param for building a graph of labeled data * Add arguments for building labeled index * Pass arguments for labeled index * Light renaming * Handle labels in insert_point * Fix missing semicolon * Add initial label handling logic * Use unlabeled algo for uniquely labeled point * Ignore frozen points when checking labels * Fix missing newline * Move label-specific logic to threadsafe zone * Check for frozen points when assert num points and num labeled points * Fix file name concatenation for label metadata * inmem_graph_store initial impl * Use Lbuild to append to pruned_list during filter build * Add label counts for deleting from streaming index * Fix typo * Fix conditions for testing * Add medoid search to support deleting label medoids from graph * resolvig error with bfs_medoid_search() * trying to create 2 pruned_lists and combine them * Clear pool between calls to search_for_point_and_prune. Fix integer math * Update pruned_list algo for link method * making fz_points to be medoids for labels encountered * repositioning medoids as well because they are fz points when compacting data * removing unrequired method * rebasing from main * adding tests in yml workflow for dynamic index with labels * quick fix * removing combining of unfiltered + filtered list for now * trying to resolve disk search poor performance * incleasing L size while searching disk index * minor roolback * updating dynamic-label to not use tag file while computing GT * altering some test search L values * adding unfiltered search for filtered batch build index * adding compute gt for zipf dist labels in labsls wowrkflow * searching filtered streaming index with popular label for now * reposition fz points as medoids for filtered dynamic build * minor renaming vars * seoparate functio for insert opoint with labels and without labels * clang error fix * barebones of in mem graph store * refactoring index to use index factory * clang format fix * window build fix * making enum to enum class (c++ 11 style) for scope resolution with same enum values * cleaning up API for GraphSore * resolving comments * clang error fix * adding some comments * moving _nd back to index class * removing funcrion reposition medoidds its not required, incorporated into reposition_points * altering -L (32->5) and -R (16->32) whhile building filterted disk index to work well with modified connections in algo * updating docs -> dynamic_index.md to have info on how to build and search filtered dynamic index * updating docs * updateing _pts_to_labels when repositioning fz_points * error fix * clang fix * making sure _pts_to_labels are not empty * fixing dynamic-label build error * code improvements * adding logic for test_ins_del_consolidate to support filtered index * resolving PR comments * error fix * error fix for dynamic * now test insert delete consolidate support building filters * lowering recal in case of test insert delete consolidte * resolving PR comments * removing _num_frozen_point from graph store * minor fix * moving _start back to main + minor update in graph store api to support that * adding a lock before detect_common_filter + minor naming improvement * adding requested changes from Gopal * removing reservations * resolving namespace resolution for defaults after build failure * minor update * minor update * speeding up location update logic while repositioning * updated with reserving mem for graph neighbours upfront * build error fix * minor update in assert * initial commit * updating python bindings to use new ctor * python binding error fix * error fix * reverting some changes -> experiment * removing redundnt code from native index * python build error fix * tyring to resolve python build error * attempt at python build fix * adding IndexSearchParams * setting search threads to non zero * minor check removed * eperiment 3-> making distance fully owned by data_store * exp 3 clang fix * exp 4 * making distance as unique_ptr * trying to fix build * finally fixing problem * some minor fix * adding dll export to index_factory static function * adding dll export for static fn in index_factory * code cleanup * resolving errors after merge * resolving build errors * fixing build error for stitched index * resolving build errors * removing max_observed_degree set() * removing comments + typo fix * replacing add_neighbour with set_neighbours where we can * error fix * minor fix * fixing error introduced while rebasing * fixing error for dynamic filtered index * resolving dynamic build deadlick error * resolving error with test_insert_del_consolidate for dynamic filter build * minor code cleanup * refactoring fz_pts and filter_index to be property of IndexConfig and hence Index * removing write_params from build() * removing write_params from buidl and taking it upfront in Index Ctor * minor fix * renaming build_params to filter params * fixing errors on auto merge * auto decide universal_label experiment * resolving bug with universal lable * resolving dynamic labels error, if there are unused fz points * exposing set_universal_label() through abstract index * minor update: sanity check * minor update to search * including tag file while computing GT * generating compacted label file and using it in generate GT * minor fix * resolving New PR comments (minor typo fixes) * renaming _pts_to_labels to _tag_to_labels + adding a warning for consolidate deletes and quality of index * minor name chnage + code cleanup * clang format fix * adding locks for filter data_structures * avoiding deadock * universal label defination update * reverting locks on _location_to_labels as its causing problems with large dataset * adding locks for _label_to_medoid_id * Update dynamic_index.md * Update dynamic-labels.yml * renaming some variables --------- Co-authored-by: David Kaczynski <dkaczynski@microsoft.com> Co-authored-by: yashpatel007 <patelyash1311@gmail.com> Co-authored-by: Yash Patel <47032340+yashpatel007@users.noreply.github.com> Co-authored-by: Harsha Vardhan Simhadri <harsha-simhadri@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for ced3b4f - Browse repository at this point
Copy the full SHA ced3b4fView commit details
Commits on Oct 4, 2023
-
Configuration menu - View commit details
-
Copy full SHA for dee332d - Browse repository at this point
Copy the full SHA dee332dView commit details -
add check for .enc extension to support encryption (#467)
* add check for .enc extension to support encryption * check rotation_matrix file in file blobs
Configuration menu - View commit details
-
Copy full SHA for a5334dd - Browse repository at this point
Copy the full SHA a5334ddView commit details
Commits on Oct 13, 2023
-
read from MemoryMappedFile when EXEC_ENV_OLS is defined (#471)
* read from MemoryMappedFile when EXEC_ENV_OLS is defined * fix is_open/close which stringstream does not have * fix formating to comply with clang * fix labels.yml: create tmp directory before search_diskk_index is run * fix to reset stream after reads
Configuration menu - View commit details
-
Copy full SHA for c47b3ac - Browse repository at this point
Copy the full SHA c47b3acView commit details
Commits on Oct 16, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 720c45c - Browse repository at this point
Copy the full SHA 720c45cView commit details
Commits on Oct 19, 2023
-
* read whole label file to memory, use string find instead stringstream * format doc
Configuration menu - View commit details
-
Copy full SHA for ed9466c - Browse repository at this point
Copy the full SHA ed9466cView commit details
Commits on Oct 20, 2023
-
Bump rustix from 0.37.20 to 0.37.25 in /rust (#479)
Bumps [rustix](https://github.com/bytecodealliance/rustix) from 0.37.20 to 0.37.25. - [Release notes](https://github.com/bytecodealliance/rustix/releases) - [Commits](bytecodealliance/rustix@v0.37.20...v0.37.25) --- updated-dependencies: - dependency-name: rustix dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 3d58ceb - Browse repository at this point
Copy the full SHA 3d58cebView commit details
Commits on Nov 6, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 179927e - Browse repository at this point
Copy the full SHA 179927eView commit details
Commits on Nov 7, 2023
-
Adding Filtered Index support to Python bindings (#482)
* Halfway approach to the new indexfactory, but it doesn't have the same featureset as the old way. Committing this for posterity but reverting my changes ultimately * Revert "Halfway approach to the new indexfactory, but it doesn't have the same featureset as the old way. Committing this for posterity but reverting my changes ultimately" This reverts commit 03dccb5. * Adding filtered search. API is going to change still. * Further enhancements to the new filter capability in the static memory index. * Ran automatic formatting * Fixing my logic and ensuring the unit tests pass. * Setting this up as a rc build first * list[list[Hashable]] -> list[list[str]] * Adding halfway to a solution where we query for more items than exist in the filter set. We need to replicate this behavior across all indices though - dynamic, static disk and memory w/o filters, etc * Removing the import of Hashable too
Configuration menu - View commit details
-
Copy full SHA for 4a57e89 - Browse repository at this point
Copy the full SHA 4a57e89View commit details
Commits on Nov 9, 2023
-
Fixing index_prefix_path bug in python for StaticMemoryIndex (#491)
* Fixing the same bug I had in static disk index inside of static memory index as well. * Unit tests and a better understanding of why the unit tests were successful despite this bug
Configuration menu - View commit details
-
Copy full SHA for 35f8cf7 - Browse repository at this point
Copy the full SHA 35f8cf7View commit details
Commits on Nov 20, 2023
-
Configuration menu - View commit details
-
Copy full SHA for b2a595c - Browse repository at this point
Copy the full SHA b2a595cView commit details
Commits on Nov 23, 2023
-
Address race condition in
iterate_to_fixed_point
(#478)Co-authored-by: Siddharth Gollapudi <t-gollapudis@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 87990da - Browse repository at this point
Copy the full SHA 87990daView commit details
Commits on Dec 1, 2023
-
Use TCMalloc to fix system memory leak (#494)
* add fix for memory leak * cmake change for enable tcmalloc * add hot fix for cmake for boost and tcmalloc * fix indentation * identitation * change camke set on after cmake_minimum_required * unset tcmalloc for PYBIND * unset envirvariable beforehead * set off * exlucde the compile def for pybind * disable for pybind
1Configuration menu - View commit details
-
Copy full SHA for 03abc71 - Browse repository at this point
Copy the full SHA 03abc71View commit details
Commits on Dec 5, 2023
-
Adding a new PQ Distance Metric and PQ Data Store (#384)
* Added PQ distance hierarchy Changes to CMakelists PQDataStore version that builds correctly Clang-format * Fixing compile issues after rebase to main * minor renaming functions * fixed small bug post rebasing with index factory * Changes to index factory to support PQDataStore * Merged graph_store and pq_data_store * Implementing preprocessing for inmemdatastore * Incorporating code review comments * minor bugfix for PQ data allocation * clang-formatted * Incorporating CR comments * Fixing compile error * minor bug fix + clang-format * Update pq.h * Fixing warnings about struct/class incompatibility --------- Co-authored-by: Gopal Srinivasa <gopalsr@microsoft.com> Co-authored-by: ravishankar <rakri@microsoft.com> Co-authored-by: gopalrs <33950290+gopalrs@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 5744060 - Browse repository at this point
Copy the full SHA 5744060View commit details
Commits on Dec 18, 2023
-
Bump zerocopy from 0.6.1 to 0.6.6 in /rust (#499)
Bumps [zerocopy](https://github.com/google/zerocopy) from 0.6.1 to 0.6.6. - [Release notes](https://github.com/google/zerocopy/releases) - [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md) - [Commits](https://github.com/google/zerocopy/commits) --- updated-dependencies: - dependency-name: zerocopy dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 38cf26d - Browse repository at this point
Copy the full SHA 38cf26dView commit details
Commits on Jan 26, 2024
-
Fix calculation of current_point_offset in test_insert_consolidate_de…
…letes (#501) The program builds the streaming index after two optional steps: 1) skipping S points from the input file and 2) batch building of initial index using B points from the input file. After these two steps, the offset to the input file should be S + B, but the current code first sets it to S in line 163 then overwrites it to B in line 249, instead of adding B to the offset. The tool which `test_insert_deletes_consolidate` was based on was using `+=` in the modified line.
Configuration menu - View commit details
-
Copy full SHA for 5cf0360 - Browse repository at this point
Copy the full SHA 5cf0360View commit details
Commits on Feb 6, 2024
-
* add 16 bytes tag type * clean up code * format doc * fix compile issue * fix compile issue * revert change * format doc * separate static search and streaming search * clean up code * resolve comment * format doc * fix test * resolve comment
Configuration menu - View commit details
-
Copy full SHA for 58de98d - Browse repository at this point
Copy the full SHA 58de98dView commit details -
* compiles, but need to verify * fixed windows compiler warning * minor typo * added cosine unit test with unnormalized data * minor typo in user prompt cosine/l2 * cosine was already supported in groundtruth, edited the message to say so * clang-format --------- Co-authored-by: rakri <rakri@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 13df0cf - Browse repository at this point
Copy the full SHA 13df0cfView commit details -
Version bump 0.7.0rc2->0.7.0 (#510)
* Version bump 0.7.0rc2->0.7.0 Preparing diskannpy for 0.7.0 release (filter support, static memory indices only) * Update pyproject.toml the GPG key from (presumably) 2019 is no longer valid * Update pyproject.toml * Update python-release.yml By default, GITHUB_TOKEN no longer has write permissions - you have to explicitly ask for it in the specific job that needs it. We use write permissions to update the Github release action that updates the published build artifacts with the results of the release flow.
Configuration menu - View commit details
-
Copy full SHA for df225d3 - Browse repository at this point
Copy the full SHA df225d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6e4569f - Browse repository at this point
Copy the full SHA 6e4569fView commit details
Commits on Feb 7, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 9500d5a - Browse repository at this point
Copy the full SHA 9500d5aView commit details -
* Fix small bugs for DLVS path. * Easier for user to use. --------- Co-authored-by: REDMOND\ninchen <ninchen@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 24581a4 - Browse repository at this point
Copy the full SHA 24581a4View commit details
Commits on Feb 26, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 340bc58 - Browse repository at this point
Copy the full SHA 340bc58View commit details
Commits on Feb 27, 2024
-
Add simplified functions for product quantization (#514)
* Add simplified functions for product quantization * Fixing formatting errors * Fixing clang-format issue * Fixing another set of clang-format issues --------- Co-authored-by: Michael Popov (from Dev Box) <mipopo@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for a25ee6f - Browse repository at this point
Copy the full SHA a25ee6fView commit details
Commits on Mar 5, 2024
-
Create in memory data store/graph store with at least max_points as 1 (…
…#523) * create in memory data store/graph store with at least max_points as 1 * fix code formatting
Configuration menu - View commit details
-
Copy full SHA for 61846c0 - Browse repository at this point
Copy the full SHA 61846c0View commit details
Commits on Mar 7, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 2795f85 - Browse repository at this point
Copy the full SHA 2795f85View commit details
Commits on Mar 26, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 9e87637 - Browse repository at this point
Copy the full SHA 9e87637View commit details
Commits on Apr 2, 2024
-
Fix PQScratch memory leak (#522)
* fix memory leak * FIXED clang-format error * FIXED SSDQueryScratch Destroy OOM
Configuration menu - View commit details
-
Copy full SHA for 4e0eb88 - Browse repository at this point
Copy the full SHA 4e0eb88View commit details
Commits on Apr 10, 2024
-
Configuration menu - View commit details
-
Copy full SHA for d78970f - Browse repository at this point
Copy the full SHA d78970fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 08333d8 - Browse repository at this point
Copy the full SHA 08333d8View commit details
Commits on Apr 12, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 4e63bfe - Browse repository at this point
Copy the full SHA 4e63bfeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0ad3ec2 - Browse repository at this point
Copy the full SHA 0ad3ec2View commit details -
Configuration menu - View commit details
-
Copy full SHA for bb83da9 - Browse repository at this point
Copy the full SHA bb83da9View commit details
Commits on Apr 15, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 9a87dc1 - Browse repository at this point
Copy the full SHA 9a87dc1View commit details
Commits on Apr 17, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 0e83b89 - Browse repository at this point
Copy the full SHA 0e83b89View commit details
Commits on Apr 19, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 6c050a1 - Browse repository at this point
Copy the full SHA 6c050a1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4b4bed5 - Browse repository at this point
Copy the full SHA 4b4bed5View commit details -
Bump openssl from 0.10.55 to 0.10.60 in /rust (#496)
Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.55 to 0.10.60. - [Release notes](https://github.com/sfackler/rust-openssl/releases) - [Commits](sfackler/rust-openssl@openssl-v0.10.55...openssl-v0.10.60) --- updated-dependencies: - dependency-name: openssl dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 8aedb3a - Browse repository at this point
Copy the full SHA 8aedb3aView commit details
Commits on Apr 22, 2024
-
Configuration menu - View commit details
-
Copy full SHA for aed8d4b - Browse repository at this point
Copy the full SHA aed8d4bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 25e3af6 - Browse repository at this point
Copy the full SHA 25e3af6View commit details
Commits on Apr 24, 2024
-
Configuration menu - View commit details
-
Copy full SHA for abda8bb - Browse repository at this point
Copy the full SHA abda8bbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 469ec02 - Browse repository at this point
Copy the full SHA 469ec02View commit details
Commits on Apr 25, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 7c05484 - Browse repository at this point
Copy the full SHA 7c05484View commit details -
Configuration menu - View commit details
-
Copy full SHA for 363c59e - Browse repository at this point
Copy the full SHA 363c59eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 286db31 - Browse repository at this point
Copy the full SHA 286db31View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7cfa7f6 - Browse repository at this point
Copy the full SHA 7cfa7f6View commit details -
Configuration menu - View commit details
-
Copy full SHA for e9c5c44 - Browse repository at this point
Copy the full SHA e9c5c44View commit details
Commits on Apr 27, 2024
-
Configuration menu - View commit details
-
Copy full SHA for ec577f1 - Browse repository at this point
Copy the full SHA ec577f1View commit details
Commits on Apr 28, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 3fa9d42 - Browse repository at this point
Copy the full SHA 3fa9d42View commit details
Commits on Apr 30, 2024
-
Merge branch 'main' of https://github.com/microsoft/DiskANN into jega…
…o/LabelHostFixWithMain3
Configuration menu - View commit details
-
Copy full SHA for 6e36270 - Browse repository at this point
Copy the full SHA 6e36270View commit details -
Configuration menu - View commit details
-
Copy full SHA for e2b3007 - Browse repository at this point
Copy the full SHA e2b3007View commit details -
Configuration menu - View commit details
-
Copy full SHA for 209a15a - Browse repository at this point
Copy the full SHA 209a15aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6863ba6 - Browse repository at this point
Copy the full SHA 6863ba6View commit details