Commit Graph
1585 Commits
Author SHA1 Message Date
Andrew Kane e793a63fab Updated GUC names [skip ci] 2024-10-10 23:50:11 -07:00
Andrew Kane 5182d1bfff Updated comment [skip ci] 2024-10-10 21:02:33 -07:00
Andrew Kane c7bbf5e030 Use a lower max allocation size than default to allow scanning more tuples for iterative search before exceeding work_mem [skip ci] 2024-10-10 20:57:57 -07:00
Andrew Kane 9a2bc87b0c Added HnswInitSearchCandidate function 2024-10-10 19:30:47 -07:00
Andrew Kane e9dc71c2ca Switched to macos-13 on CI [skip ci] 2024-10-10 18:33:35 -07:00
Andrew KaneandJonathan S. Katz 50203d90c2 Use get_float8_infinity instead of INFINITY
Co-authored-by: "Jonathan S. Katz" <[email protected]>
2024-10-10 18:16:39 -07:00
Andrew Kane e5860ccc63 Added iterative search for HNSW [skip ci] 2024-10-10 18:14:39 -07:00
Andrew Kane 630b0272c2 Added iterative search for IVFFlat [skip ci] 2024-10-10 18:12:27 -07:00
Andrew Kane 6a35e4be9a Fixed sortdesc for multiple attributes [skip ci] 2024-10-10 15:22:23 -07:00
Andrew Kane 0e6cf07147 List assignment does not change with scaling [skip ci] 2024-10-10 15:16:08 -07:00
Andrew Kane 9907c183dc Improved IVFFlat vacuum test [skip ci] 2024-10-10 14:24:26 -07:00
Andrew Kane 172cccc905 Fixed list assignment for cosine distance and non-normalized vectors for IVFFlat 2024-10-10 12:54:13 -07:00
Andrew Kane a43b1ced47 Updated IVFFlat to support multiple attributes (not enabled yet) 2024-10-10 12:34:03 -07:00
Andrew Kane e8f1a58f4e Improved scoping [skip ci] 2024-10-10 12:19:08 -07:00
Andrew Kane 6e7e0a17db Added tupdesc to buildstate [skip ci] 2024-10-10 12:18:41 -07:00
Andrew Kane fcc04b0644 Renamed tupdesc to sortdesc [skip ci] 2024-10-10 12:16:57 -07:00
Andrew Kane 8eba80601c Moved unions and macros [skip ci] 2024-10-10 09:41:26 -07:00
Andrew Kane 94820e4360 Added HnswQuery struct for query data 2024-10-09 23:45:47 -07:00
Andrew Kane b7503e6ee1 Added HnswSupport struct for support functions 2024-10-09 23:10:26 -07:00
Andrew Kane 4ba87ac4de Moved procinfo initialization for inserts [skip ci] 2024-10-09 21:59:21 -07:00
Andrew Kane 5c69789f4f Improved variable name [skip ci] 2024-10-09 21:52:10 -07:00
Andrew Kane 7748d33953 Use inMemory for conditionals 2024-10-09 21:49:32 -07:00
Andrew Kane 3759361423 DRY HNSW procinfo 2024-10-09 21:03:18 -07:00
Andrew Kane 4138dcf0cb DRY code for forming index value 2024-10-09 20:50:17 -07:00
Andrew Kane 1fd554a279 Use double for distance [skip ci] 2024-10-09 17:04:25 -07:00
Andrew Kane 695f4341cc DRY HNSW distance calculations 2024-10-09 17:01:49 -07:00
Andrew KaneandGitHub 91cb4b74fa Improve total cost for cost estimation (#686) 2024-10-08 12:42:03 -07:00
Andrew Kane 84fc0323b8 Fixed memory context leak in HnswUpdateNeighborsOnDisk - fixes #692 2024-10-08 12:21:26 -07:00
Andrew Kane aa3e603b6a Use separate memory context for updating neighbors, which improves performance around 10% for larger vectors 2024-09-30 11:15:27 -07:00
Andrew Kane b6acd63967 Moved logic to get update neighbor on disk to separate function 2024-09-30 10:30:01 -07:00
Andrew Kane a431fc824f Moved logic to get update index to separate function 2024-09-30 10:14:52 -07:00
Andrew Kane 36070cd59c Fixed insert logic 2024-09-30 09:59:12 -07:00
Andrew Kane 2c81780b46 Use Size for memory [skip ci] 2024-09-29 23:48:58 -07:00
Andrew Kane 33d0ccda86 Improved SelectNeighbors signature [skip ci] 2024-09-29 23:03:02 -07:00
Andrew Kane 772960ccdf Improved HnswUpdateConnection parameters [skip ci] 2024-09-29 19:47:25 -07:00
Andrew Kane 975cd87356 Moved insert-specific code to hnswinsert.c 2024-09-29 19:44:11 -07:00
Andrew Kane e03f809b17 Improved variable name [skip ci] 2024-09-29 19:26:15 -07:00
Andrew Kane 7d35acca8c Improved variable names [skip ci] 2024-09-29 19:22:35 -07:00
Andrew Kane f7252f9327 Moved LoadElementsForInsert to separate function and removed unused code path 2024-09-29 19:12:38 -07:00
Andrew Kane 14cf1ff707 Use HnswLoadNeighborTids for inserts 2024-09-29 18:52:12 -07:00
Andrew Kane 4134ad7db4 Removed lc from HnswUpdateConnection [skip ci] 2024-09-29 18:18:42 -07:00
Andrew Kane b2cf4fec08 Removed lc from SelectNeighbors [skip ci] 2024-09-29 18:14:28 -07:00
Andrew Kane c6bdcec753 Split loading neighbor TIDs into separate function [skip ci] 2024-09-29 17:20:54 -07:00
Andrew Kane 5769993a5e Moved HnswLoadNeighbors to hnswinsert.c [skip ci] 2024-09-29 15:49:01 -07:00
Andrew Kane dcce5779c0 Use sc for search candidates [skip ci] 2024-09-29 15:09:54 -07:00
Andrew Kane 973cce6b91 Updated distance to use double 2024-09-29 15:06:50 -07:00
Andrew Kane 55927ffcec Fixed uninitialized variable [skip ci] 2024-09-28 19:18:52 -07:00
Andrew Kane 25c2630a5f Added distance filters to cost tests [skip ci] 2024-09-28 14:50:23 -07:00
Andrew Kane f71cb1931f Updated readme [skip ci] 2024-09-28 09:23:41 -07:00
Andrew Kane 4077f866d7 Updated default Postgres version in Dockerfile [skip ci] 2024-09-27 16:19:57 -07:00