aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/attribute/tensorattribute/tensorattribute_test.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update copyrightJon Bratseth2023-10-091-1/+1
|
* Control the auto-adjustment of targetHits in ANN using post-filtering.Geir Storli2023-08-151-4/+18
| | | | | | | | | | | | | | When searching the HNSW index in a post-filtering case, targetHits is auto-adjusted in an effort to still expose targetHits hits to first-phase ranking after post-filtering. The following formula is now used to ensure an upper bound of adjustedTargetHits, avoiding that the search in the HNSW index takes too long. adjustedTargetHits = min(targetHits / estimatedHitRatio, targetHits * targetHitsMaxAdjustmentFactor). The target-hits-max-adjustment-factor can be set in a rank profile and overriden per query. The value is in the range [1.0,inf], with the default being 20.0. When setting this to 1.0, auto-adjustment of targetHits is effectively disabled.
* Add Doom to hnsw index.Tor Egge2023-05-311-2/+9
|
* Store max squared norm in file header during hnsw index save when usingTor Egge2023-05-231-4/+37
| | | | dotproduct distance metric. Adjust hnsw index load.
* add mimimal version of BoundDistanceFunctionArne Juul2023-04-191-7/+10
|
* Add SerializedTensorRef.Tor Egge2023-02-221-1/+55
|
* Report address space usage for hnsw nodeid mapping.Tor Egge2023-01-131-7/+24
|
* Update address space component names.Tor Egge2023-01-111-2/+2
|
* Remove stacksize from the thread pools and thread executors.Henning Baldersheim2022-12-201-1/+1
|
* Remove out of range search::BitVector::setBit() in unit test.Tor Egge2022-11-301-1/+0
|
* Setup hnsw index for mixed tensor types.Tor Egge2022-11-231-17/+108
|
* Add enum class HnswIndexType.Tor Egge2022-11-161-2/+3
|
* Rename HnswNode to HnswTestNode.Tor Egge2022-11-091-2/+2
|
* Pass VectorBundle to NearestNeighborIndex::prepare_add_document member function.Tor Egge2022-11-041-2/+4
|
* Pass subspace to DocVectorAccess::get_vector member function.Tor Egge2022-11-021-3/+3
|
* Rename trimHoldLists() -> reclaim_memory().Geir Storli2022-10-121-2/+2
|
* Rename transferHoldLists() -> assign_generation().Geir Storli2022-10-121-1/+1
|
* Use paged setting for SerializedFastValueAttribute.Tor Egge2022-10-101-33/+63
|
* add support for multi-bitvector global filterHåvard Pettersen2022-09-131-3/+3
| | | | | move some testing convenience into GlobalFilter make more realistic bitvectors for filter testing
* GlobalFilter is now an interfaceHåvard Pettersen2022-09-121-1/+1
| | | | instead of a shared optional BitVector
* Refactor validation code for setting up a distance calculator for re-use in ↵Geir Storli2022-07-061-6/+7
| | | | rank features.
* Reduce code duplication by using fef::QueryValue in RequestContext ↵Geir Storli2022-07-051-4/+10
| | | | implementation.
* Revert "Revert "Don't make changes to the hnsw index when the inserted ↵Geir Storli2022-06-221-0/+30
| | | | tensor is unchanged""
* Revert "Don't make changes to the hnsw index when the inserted tensor is ↵Geir Storli2022-06-131-30/+0
| | | | unchanged"
* Merge pull request #23051 from ↵Geir Storli2022-06-131-0/+30
|\ | | | | | | | | vespa-engine/geirst/dont-update-hnsw-with-unchanged-tensors Don't make changes to the hnsw index when the inserted tensor is unchanged
| * Don't make changes to the nearest neighbor index (hnsw) when the inserted ↵Geir Storli2022-06-101-0/+30
| | | | | | | | | | | | tensor is unchanged. With this optimization we avoid doing unnecessary costly work, first removing the vector point, then inserting the same point.
* | fix undefined behavior in unit testsHåvard Pettersen2022-06-091-1/+1
|/
* Remove most use of vespalib::rmdir in searchlib.Tor Egge2022-06-021-6/+6
|
* Include searchcommon/attribut/config.h yourself and prepare for hiding large ↵Henning Baldersheim2022-05-251-6/+7
| | | | | | implementation. Add setters to vespalib::GrowStrategy.
* Auto-adjust targetHits for approximate nearest neighbor search when using ↵Geir Storli2022-05-101-11/+20
| | | | | | | | post-filtering. The goal is to expose 'targetHits' hits to first-phase ranking. Before searching the HNSW index, targetHits is adjusted based on the estimated hit ratio of the query to compensate for the hits that will be removed in post-filtering.
* Improve and extend visit trace for nearest neighbor blueprint.Geir Storli2022-04-221-5/+0
|
* Simplify calculation of global filter and fallback to brute force when using ↵Geir Storli2022-04-111-2/+13
| | | | | | | | nearest neighbor search. With this change only two parameters are used to adjust the algorithm: - vespa.matching.global_filter.lower_limit - vespa.matching.global_filter.upper_limit
* - assert result of Close() in destructor of FastOS_File and FastOS_BufferedFile.Henning Baldersheim2022-01-261-1/+0
| | | | | | | - Check result of Close() - Check result of Sync() - Scope FastOS_File to avoid explicit Close(). - NULL -> nullptr
* Calculate need for compaction when updating stats.Tor Egge2021-12-091-1/+2
|
* Move CompactionStrategy from searchcommon to vespalib.Tor Egge2021-12-081-1/+1
|
* Update 2017 copyright notices.gjoranv2021-10-071-1/+1
|
* Change loading of nearest neighbor index to use direct I/O instead of mmapping.Geir Storli2021-09-151-8/+6
| | | | This should reduce memory spike during loading.
* Reduce memory spike during loading of hnsw index by committing at regular ↵Geir Storli2021-09-101-4/+22
| | | | | | | intervals. This ensures that memory buffers on hold lists are trimmed while loading, keeping the excess memory usage at a minimum.
* The global filter is only needed when having a nearest neighbor index (hnsw) ↵Geir Storli2021-08-301-17/+44
| | | | | | and doing approximate calculation. This avoids costly calculation of the global filter in cases it is not needed.
* Report address space usage for shared string repo for non-dense tensor ↵Geir Storli2021-08-231-2/+8
| | | | attributes.
* Report address space usage for components in tensor attributes.Geir Storli2021-08-201-0/+23
|
* Compact HNSW index when ratio of dead bytes / address space is too highTor Egge2021-08-181-0/+8
| | | | relative to used bytes / address space.
* Use the executor for the part that can be parallell when rebuilding index on ↵Henning Baldersheim2021-08-131-0/+33
| | | | load.
* swappable -> pagedHenning Baldersheim2021-08-121-2/+2
|
* A swappable attribute will use a file backed memory allocator.Henning Baldersheim2021-08-121-0/+23
|
* Reenable tensor attribute compaction test.Tor Egge2021-06-011-8/+10
|
* let the distance function decide how it wants the query tensor convertedArne Juul2021-04-121-1/+1
|
* fix NNS distance for new cell typesArne Juul2021-04-121-1/+1
| | | | This reverts commit f167fe4362c5e4e20a7605b99205cfbee77c569a.
* Revert "fix NNS distance for new cell types"Arnstein Ressem2021-04-121-1/+1
|
* fix NNS distance for new cell typesArne Juul2021-04-091-1/+1
|