Commit Graph
71 Commits
Author SHA1 Message Date
Andrew Kane c425bc7158 Cleaned up header 2023-08-19 01:22:28 -07:00
Andrew Kane 2e6d608621 Fixed overflow with vector_norm 2023-08-09 16:33:54 -07:00
Andrew Kane 054f5feed3 Added HNSW index type - #181 2023-08-08 16:42:47 -07:00
Andrew Kane 69d3761272 Added space before comment [skip ci] 2023-08-05 10:20:30 -07:00
Andrew Kane 4fbc5af1aa Fixed CI 2023-07-25 15:44:04 -07:00
Andrew Kane f5d34a1a8c Fixed out of range results for cosine distance - fixes #196 2023-07-25 14:54:13 -07:00
Andrew Kane ae2fe7f96a Use fused multiply-add for cosine distance 2023-07-18 16:10:17 -07:00
Andrew Kane 8e70e490b3 Ran pgindent [skip ci] 2023-07-18 16:08:50 -07:00
Pavel BorisovandGitHub b2e45ed5ea Speed up ivfflat build: use float instead of double for dot product (#180)
calculation

On ARM this makes CPU using vector multiply-add instruction (fmadd)
instead of vector multiplication + conversion to double + addition
(fmul + fcvt + fadd) at each vector dimension.

Output of distance functions and calculations that are are done once
per vector pair are left double as this don't make speed difference
and for compatibility.
2023-07-18 12:55:38 -07:00
Andrew Kane 3f2b9e6e60 Improved includes 2023-07-17 13:17:48 -07:00
Andrew Kane c74e0d0a31 Improved includes 2023-07-17 13:15:10 -07:00
Andrew Kane 3eaf250b86 Moved _PG_init 2023-07-16 20:03:34 -07:00
Andrew Kane d086b11bf4 Simplified sum aggregate 2023-07-16 15:30:03 -07:00
Andrew Kane d354f1c815 Improved array_to_vector [skip ci] 2023-07-15 22:56:29 -07:00
Andrew Kane 34f11ee828 Improved null check and fixed message [skip ci] 2023-07-15 22:51:40 -07:00
Andrew Kane b1b618616c Added sum aggregate 2023-07-15 20:25:30 -07:00
Andrew Kane 324642ff78 Added element-wise multiplication for vectors 2023-07-15 20:19:51 -07:00
Andrew Kane ae8f74fdbf Added l1_distance function - #166 2023-07-15 20:13:45 -07:00
Andrew Kane 738167baca Improved variable scoping 2023-07-15 18:53:41 -07:00
Andrew Kane 82f0932180 Fixed segmentation fault with text representation 2023-06-12 01:09:40 -07:00
Andrew Kane 0cc4dd32fd Updated comments [skip ci] 2023-06-11 18:36:41 -07:00
Andrew Kane 02ddf63a0c Added comment for CheckDim [skip ci] 2023-06-11 13:06:51 -07:00
Andrew Kane c7d92d0364 Simplified PrintVector [skip ci] 2023-06-11 12:54:18 -07:00
Andrew Kane 145124f80a Check for empty string like float4in [skip ci] 2023-06-11 12:34:24 -07:00
Andrew Kane 2c6f6eb856 Use vector_isspace to remove whitespace before strtof 2023-06-11 12:21:27 -07:00
Andrew Kane f3d3a17082 Fixed consecutive delimiters with text representation 2023-06-11 12:10:52 -07:00
Andrew Kane bb5acf22e7 Updated format [skip ci] 2023-06-11 12:04:02 -07:00
Andrew Kane 2e925491b8 Improved error message for invalid input syntax 2023-06-11 12:00:04 -07:00
Andrew Kane 61ab568c42 No need to manually free memory on errors 2023-06-11 09:42:20 -07:00
Andrew Kane 0e82cdbb58 Improved error message for malformed vector literal - #153 2023-06-11 09:24:11 -07:00
Andrew Kane 8b44e85a89 Added todo [skip ci] 2023-06-09 00:27:01 -07:00
Andrew Kane eb29fb644d Removed extra line [skip ci] 2023-06-08 23:14:34 -07:00
Andrew Kane 785393d225 Added comments [skip ci] 2023-06-08 23:02:03 -07:00
Andrew Kane ebc3636ba2 Added comments [skip ci] 2023-06-08 23:01:09 -07:00
Andrew Kane d08f5eb7d8 Improved variable name [skip ci] 2023-06-08 22:51:20 -07:00
Andrew Kane 3e3850cbbc Simplified code [skip ci] 2023-06-08 22:43:00 -07:00
Andrew Kane 43b9a553be Free memory on errors 2023-06-08 22:35:31 -07:00
Andrew Kane 5837ef5240 Free datums 2023-06-08 21:23:03 -07:00
Andrew Kane db35dc8c4d Updated comments [skip ci] 2023-06-08 20:26:27 -07:00
Andrew Kane 7c5e752863 Moved whitespace check 2023-06-08 19:52:49 -07:00
yihongandGitHub 3b7c1dcb54 fix: input function does not allow tailing spaces (#148) 2023-06-08 19:51:20 -07:00
Andrew Kane b1342242f3 Added element check to binary format and fixed segmentation fault with index creation - fixes #151 2023-06-08 18:32:36 -07:00
Andrew Kane 880b88e8a5 Fixed infinite values with vector addition and subtraction 2023-05-31 13:54:19 -07:00
Andrew Kane f2b614802a Fixed avg functions when float8 is pass by reference - #131 2023-05-17 12:01:08 -07:00
Andrew Kane 14ec3db52e Added dimensions check to vector_avg 2023-05-12 17:19:16 -07:00
Nathan BossartandGitHub c9520cd782 Check bounds unconditionally in array_to_vector(). (#127)
Presently, array_to_vector()'s call to CheckDim() is skipped when typmod != -1, which allows for bypassing VECTOR_MAX_DIM.  To fix, call Check[Expected]Dim() unconditionally.  CheckExpectedDim() takes no action when typmod == -1, so there's no need to guard it with an 'if' statement.
2023-05-12 17:08:51 -07:00
Andrew Kane 751cdaf6c5 Fixed installation error with Postgres 12.0-12.2 - fixes #101 2023-04-25 09:36:21 -07:00
Andrew Kane 1d020abdd1 Added auto-vectorized comments [skip ci] 2023-03-31 16:20:10 -07:00
Andrew Kane 4e68f4f800 Updated comment [skip ci] 2023-03-21 11:55:26 -07:00
Andrew Kane b69ac51ad7 Added comment [skip ci] 2023-03-21 11:43:30 -07:00