summaryrefslogtreecommitdiffstats
path: root/searchlib
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #13645 from ↵Geir Storli2020-06-192-4/+7
|\ | | | | | | | | vespa-engine/geirst/multi-threaded-hnsw-indexing-flag Multi-threaded hnsw indexing flag
| * Wire flag to enable multi-threaded indexing for a hnsw index.Geir Storli2020-06-192-4/+7
| |
* | Typo fix.Tor Egge2020-06-191-1/+1
| |
* | Add description for nearest neighbor brute force limit index property.Tor Egge2020-06-191-0/+7
| |
* | Wire in nearest neighbor brute force limit.Tor Egge2020-06-1912-6/+78
| |
* | ignoreHåvard Pettersen2020-06-191-0/+1
|/
* Merge pull request #13635 from vespa-engine/lesters/additional-onnx-operatorsJon Bratseth2020-06-193-1/+8
|\ | | | | Lesters/additional onnx operators
| * Add erf (the error function)Lester Solbakken2020-06-183-1/+8
| |
* | Merge pull request #13629 from ↵Geir Storli2020-06-183-17/+109
|\ \ | |/ |/| | | | | vespa-engine/geirst/two-phase-nearest-neighbor-index-update Add support for updating a nearest neighbor index in two phases.
| * Add support for updating a nearest neighbor index in two phases.Geir Storli2020-06-183-17/+109
| |
* | Merge pull request #13626 from ↵Håvard Pettersen2020-06-181-6/+6
|\ \ | | | | | | | | | | | | vespa-engine/havardpe/test-fused-multiply-add-effect observe the results of multiply-add across implementations
| * | observe the results of multiply-add across implementationsHåvard Pettersen2020-06-181-6/+6
| | | | | | | | | | | | | | | | | | - add specific test showing diverging results when using FMA - re-write eval test to not fail due to FMA - re-write hitcollector test to not fail due to FMA
* | | Merge pull request #13572 from vespa-engine/arnej/keep-and-follow-refsArne H Juul2020-06-1810-57/+521
|\ \ \ | |_|/ |/| | Arnej/keep and follow refs
| * | update test now that TODO is doneArne Juul2020-06-181-2/+2
| | |
| * | print more statisticsArne Juul2020-06-181-11/+33
| | |
| * | rewrite with futuresArne Juul2020-06-171-69/+50
| | |
| * | add mutex protecting in_progress bitvectorArne Juul2020-06-171-16/+20
| | |
| * | rename me -> self_docidArne Juul2020-06-171-2/+3
| | | | | | | | | | | | * other tests should now ensure that we don't get self-references.
| * | minor stress-test tweaks:Arne Juul2020-06-171-8/+4
| | | | | | | | | | | | | | | | | | * update copyright line * cleanup unused includes etc * increase the numbers to test a lot more
| * | refactor task data into common base classArne Juul2020-06-171-50/+26
| | |
| * | also check graph symmetryArne Juul2020-06-172-1/+7
| | |
| * | save node_ref in prepare_add_doc and check its validity in completeArne Juul2020-06-172-25/+37
| | |
| * | untabifyArne Juul2020-06-171-6/+6
| | |
| * | get rid of test-internal race condition in MyDocVectorStoreArne Juul2020-06-161-9/+7
| | |
| * | fix bugs found by stress testArne Juul2020-06-163-5/+13
| | |
| * | add stress testArne Juul2020-06-162-0/+375
| | |
| * | add possible improvement pointsArne Juul2020-06-121-0/+2
| | |
| * | no explicit clear of each level when removing documentArne Juul2020-06-122-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | * keep the levels as they were, so any concurrent search operation getting a reference to this docid can follow old links and avoid getting trapped if possible * ensure later GC can pick up any referenced data in HnswGraph::remove_node_for_document instead, it is more robust to have it in the graph layer anyway.
| * | keep and follow node_refs when traversing HNSW graphArne Juul2020-06-126-43/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cannot assert in HnswGraph read operations, because nodes may be removed or replaced by another thread * read operations on the HNSW graph need to load the node_ref (and check that it's valid) when following links; keep and use that node_ref to ensure succeeding operations actually access information that belongs to the same version of the node. * to ensure the entry point is internally consistent, check that the atomic value is the same after reading the corresponding node_ref, and retry if it was updated concurrently.
| * | add getters checking if held references are still validArne Juul2020-06-121-2/+24
| | |
* | | Remove default tensor spec in doctype builder.Geir Storli2020-06-171-10/+2
| | |
* | | Test that attribute writer can handle put in two phases.Geir Storli2020-06-171-21/+27
| | |
* | | Implement initial support for two-phase puts in attribute writer.Geir Storli2020-06-172-4/+3
| |/ |/| | | | | This is only turned on for tensor attributes with a hnsw index that allows multi-threaded indexing.
* | Revert "Two phase put in attribute writer"Harald Musum2020-06-153-23/+26
| |
* | Merge pull request #13592 from ↵Geir Storli2020-06-153-26/+23
|\ \ | | | | | | | | | | | | vespa-engine/geirst/two-phase-put-in-attribute-writer Two phase put in attribute writer
| * | Remove default tensor spec in doctype builder.Geir Storli2020-06-151-10/+2
| | |
| * | Test that attribute writer can handle put in two phases.Geir Storli2020-06-151-21/+27
| | |
| * | Implement initial support for two-phase puts in attribute writer.Geir Storli2020-06-152-4/+3
| | | | | | | | | | | | This is only turned on for tensor attributes with a hnsw index that allows multi-threaded indexing.
* | | Merge pull request #13586 from ↵Geir Storli2020-06-151-10/+77
|\ \ \ | | | | | | | | | | | | | | | | vespa-engine/toregge/use-foreach-key-range-for-attribute-iterator-termwise-evaluation Use foreach_key_range for attribute iterator termwise evaluation
| * | | Factor out common code.Tor Egge2020-06-151-36/+31
| | | |
| * | | Use foreach_key_range for attribute iterator termwise evaluationTor Egge2020-06-151-10/+82
| |/ / | | | | | | | | | when inner iterator is a btree iterator.
* / / use typify_invoke instead of dispatch_0/select_2Arne Juul2020-06-152-5/+6
|/ /
* | Merge pull request #13563 from ↵Geir Storli2020-06-154-0/+191
|\ \ | | | | | | | | | | | | vespa-engine/toregge/add-foreach-key-range-method-to-btree-iterator Add foreach_key_range method to btree iterator, to scan a range of
| * | Add foreach_key_range method to btree iterator, to scan a range ofTor Egge2020-06-124-0/+191
| | | | | | | | | | | | the tree and call function for each key.
* | | Merge pull request #13560 from vespa-engine/arnej/follow-std-rulesArne H Juul2020-06-122-11/+27
|\ \ \ | |_|/ |/| | revert back to getting random number in the [0,1) range
| * | revert back to getting random number in the [0,1) rangeArne Juul2020-06-122-11/+27
| |/ | | | | | | | | | | | | | | | | * for whatever reason, std::uniform_real_distribution doesn't allow a>b when specifying the [a,b) half-open range. So we need to get a number from [0,1) and then do (1.0-unif) to convert to the (0,1] range that we want. * extend the unit test with more initial numbers, and write it in a more compact way.
* | unit test two-phase addArne Juul2020-06-111-0/+56
| |
* | rename internal prepare resultArne Juul2020-06-112-13/+13
| |
* | remove stub implementations in NearestNeighborIndexArne Juul2020-06-112-14/+11
| | | | | | | | | | * make API pure virtual * implement something that will work in mock
* | wire in new prepare/complete APIArne Juul2020-06-112-2/+32
| |