4 ms·
Nice! Similarity searching is the bane of my existence, but also gives life to so many of the things I work on. 200x sounds wonderfully fast. Does this do leve
by chaps 3y ago
Nice! Similarity searching is the bane of my existence, but also gives life to so many of the things I work on. 200x sounds wonderfully fast.
Does this do levenshtein distance? Didn't see it in the main document.
Edit: also, THANK YOU for adding a parameter to specify # of threads. Wish this was a wider standard practice.
- lifthrasiir 3y agoThe author is also responsible for the StringZilla library that includes levenstein distance: https://github.com/ashvardanian/StringZilla https://github.com/ashvardanian/StringZilla
- brrrrrm 3y agoOMP_NUM_THREADS=n is pretty standard in HPC workloads
- chaps 3y agoHuh, thanks. I'll check it out and see if I can drop that in.
- ashvardanian 3y agoHe-hey! For Levenshtein distance check out the development branch of StringZilla. Hopefully will release this week :) Oh, and for multithreading, USearch might be more practical.
- chaps 3y agoHeck yeah, thanks. If the first 4 bytes of the string are the same, the strings are likely to be equal. Similarly, the first 4 bytes of the strings can be used to determine their relative order most of the time. That's a fun heuristic.
- ashvardanian 3y agoYes, it was very practical in most cases, but v3 only uses it for short needles with SWAR. SIMD variants will use Raita-style heuristics.