Search Postgresql Archives

Re: Treating float arrays as vectors?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 6/17/21 7:13 AM, Celia McInnis wrote:
I would love it if there was a vector data type in postgresql along with such vector operations as addition, subtraction, scalar multiplication, cross product, dot product, normalization, length and various sorts of vector distances.

I wrote an extension to define vector-based functions that take & return numeric arrays:

https://github.com/pjungwir/floatvec

It only has basic arithmetic, but matrix math functions could be added.

If you want aggregate functions instead I wrote another extension for that:

https://github.com/pjungwir/aggs_for_vecs

I haven't touched either in a while, but if you find they have problems on modern versions of Postgres, let me know and I should be able to get them updated quickly.

I experimented a bit with an AVX implementation, and it showed a worthwhile performance improvement, but I never got around to adding it to all functions, so it was just a proof-of-concept. I could dust that off if you're interested. But since the extension is C things are already pretty fast.

Yours,

--
Paul              ~{:-)
pj@xxxxxxxxxxxxxxxxxxxxxxxx





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux