Search Postgresql Archives

Re: scoring differences between bitmasks

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

 



Yes, that's the straightforward way to do it. But given that my vectors are 256 bits in length, and that I'm going to eventually have about 4 million of them to search through, I was hoping greater minds than mine had figured out how to do it faster, or how compute some kind of indexing....... somehow.

On Oct 2, 2005, at 5:39 AM, Martijn van Oosterhout wrote:

Step 1: Use XOR to get the bits that are different.
Step 2: Count the bits.

Something like  x & ((~x) +1)  will give you the value of the last
bit that is set, mask it out and repeat. If you need to do it a lot,
build a table of 256 values and then process 8 bits at a time. Should
be fairly straight forward...

Hope this helps,
--
Martijn van Oosterhout <kleptog@xxxxxxxxx> http://svana.org/ kleptog/

Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a tool for doing 5% of the work and then sitting around waiting for someone
else to do the other 95% so you can sue them.



---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

[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 Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux