Andrew Kane
fd65bcfb10
Added indexing [skip ci]
2024-09-23 17:01:32 -07:00
Andrew Kane
d5e8fc96a5
Changed HnswPairingHeapNode to HnswSearchCandidate to reduce allocations and improve code
2024-09-21 12:07:44 -07:00
Andrew Kane
6d2af6d3f9
Improved code [skip ci]
2024-09-20 15:21:57 -07:00
Andrew Kane
a6ab5d07c0
Fixed CI
2024-09-19 20:50:51 -07:00
Andrew Kane
b738ffecc1
Dropped support for Postgres 12
2024-09-19 18:13:54 -07:00
Heikki Linnakangas
7117513532
Add error codes to a few errors ( #657 )
...
With elog(), you get XX000 "internal_error", which sounds scary.
It's not self-evident what the right error codes for some of these
errors are, but I tried to use my best judgment.
2024-09-19 18:04:23 -07:00
Andrew Kane
8e1853fbf3
Improved variable name [skip ci]
2024-09-19 15:09:40 -07:00
Andrew Kane
f9d68a061a
Simplified HnswLoadUnvisitedFromMemory [skip ci]
2024-09-19 04:39:46 -07:00
Andrew Kane
4f8ab574c9
Simplified CountElement [skip ci]
2024-09-19 04:32:38 -07:00
Andrew Kane
a15806196e
Keep scan-build happy
2024-09-19 04:02:09 -07:00
Andrew Kane
5c9429a0f8
Reduced memory usage for HNSW index scans
2024-09-19 03:27:35 -07:00
Andrew Kane
16ca608f42
Updated AddToVisited to use HnswElementPtr
2024-09-19 02:41:20 -07:00
Andrew Kane
8dde14a736
Reduced memory usage for HNSW index scans
...
Co-authored-by: Heikki Linnakangas <heikki.linnakangas@iki.fi >
2024-09-19 02:17:51 -07:00
Andrew Kane
d74d3065bc
Reduced allocations for pairing heap
2024-09-19 01:59:46 -07:00
Samuel Marks
4cede1a9c9
[src/hnswutils.c] Resolve 1 -Wmaybe-uninitialized ( #654 )
2024-08-22 19:51:16 -07:00
Andrew Kane
61870a0244
Fixed compilation warning with MSVC and Postgres 16 - fixes #598
...
Co-authored-by: Xing Guo <higuoxing@gmail.com >
2024-06-16 12:09:01 -07:00
Andrew Kane
ad7cad5ecd
Improved HnswSearchLayer code
2024-06-11 16:29:14 -07:00
Andrew Kane
9e91af5989
Added checks for invalid indexes - #591
2024-06-10 21:20:54 -07:00
Andrew Kane
49c1f13095
Improved performance of on-disk HNSW index builds - #570
2024-05-29 12:03:58 -07:00
Andrew Kane
1fdfff7349
Restored collation for consistency [skip ci]
2024-04-25 13:46:45 -07:00
Andrew Kane
38e365ed58
Restored HnswNormValue [skip ci]
2024-04-25 13:35:17 -07:00
Andrew Kane
58ec5296b0
Reduced support functions for HNSW - #527
2024-04-25 13:21:24 -07:00
Andrew Kane
47d5b2896e
Improved support functions for HNSW - #527
2024-04-25 13:00:40 -07:00
Andrew Kane
7ac0ac5a7f
Renamed functions [skip ci]
2024-04-24 15:00:36 -07:00
Andrew Kane
3eef1ff5c2
Removed type-specific code from HNSW [skip ci]
2024-04-24 14:53:45 -07:00
Andrew Kane
0da6213a60
Moved type lookup to support functions - #527
2024-04-23 13:02:47 -07:00
Andrew Kane
1994fd003a
Removed unneeded headers [skip ci]
2024-04-22 19:10:50 -07:00
Andrew Kane
f14c21748b
Added support function for l2_normalize [skip ci]
2024-04-22 18:36:47 -07:00
Andrew Kane
3df5655b30
Removed unneeded headers [skip ci]
2024-04-19 18:09:38 -07:00
Andrew Kane
5215c28923
Moved norm check to separate function
2024-04-15 15:32:08 -07:00
Andrew Kane
127ecdd650
Added l2_normalize function for sparsevec
2024-04-15 14:05:18 -07:00
Andrew Kane
10dacfd991
Updated indexes to use l2_normalize functions
2024-04-15 13:56:50 -07:00
Andrew Kane
f64abe3aae
Fixed performance of halfvec
2024-04-12 11:50:34 -07:00
Andrew Kane
85345e3f8c
Removed todo [skip ci]
2024-04-09 14:41:49 -07:00
Andrew Kane
3219a30290
Raise error for varbit
2024-04-03 21:30:43 -07:00
Andrew Kane
abac7a3f77
Added sparsevec type
2024-04-02 14:25:09 -07:00
Andrew Kane
32a502c838
Added halfvec type
2024-04-02 13:55:45 -07:00
Andrew Kane
835f010257
Fixed missing header for Postgres 12
2024-04-02 12:17:41 -07:00
Andrew Kane
c75634a03c
Fixed type check [skip ci]
2024-04-01 22:31:02 -07:00
Andrew Kane
2c48e3edc2
Mark type-specific code
2024-03-29 14:01:48 -07:00
Andrew Kane
64aa99aa31
Added todo [skip ci]
2024-03-29 10:56:24 -07:00
Andrew Kane
997fa167da
Removed vector-specific code from HNSW
2024-03-29 10:50:06 -07:00
Andrew Kane
8e59455c3c
Removed normvec for simplicity (no difference in performance)
2024-03-27 16:33:11 -07:00
Andrew Kane
91e3d2905f
Fixed sort function for Postgres 12
2024-02-28 16:26:41 -08:00
Andrew Kane
fe2406564f
Replaced pairing heap with array in SelectNeighbors - closes #447
...
Co-authored-by: Heikki Linnakangas <heikki.linnakangas@iki.fi >
2024-02-28 15:47:26 -08:00
Andrew Kane
efed873a3e
Revert "Replaced pairing heap with array in SelectNeighbors - closes #447 "
...
This reverts commit 14b278dec9 .
2024-02-28 11:33:14 -08:00
Andrew Kane
14b278dec9
Replaced pairing heap with array in SelectNeighbors - closes #447
...
Co-authored-by: Heikki Linnakangas <heikki.linnakangas@iki.fi >
2024-02-28 11:25:12 -08:00
Andrew Kane
ca10cbaa7d
Revert "Remove offsethash"
...
This reverts commit 1cbd204f52 .
2024-02-20 16:07:32 -08:00
Andrew Kane
eb29019a14
Revert "Eliminate a few HnswPtrAccess invocations"
...
This reverts commit 334c386a45 .
2024-02-20 16:07:21 -08:00
Heikki Linnakangas
334c386a45
Eliminate a few HnswPtrAccess invocations
...
HnswPtrAccess() is pretty cheap, but it stills seems worthwhile to
avoid repeated calls in the hot paths when it can be easily avoided.
2024-02-19 14:13:18 +02:00