elastic / elasticsearch

Free and Open Source, Distributed, RESTful Search Engine
https://www.elastic.co/products/elasticsearch
Other
1.33k stars 24.87k forks source link

SIMD optimized asymmetric bit dot-product #117096

Open benwtrent opened 2 days ago

benwtrent commented 2 days ago

Description

Painless now supports asymmetric bit dot-product, meaning, treating the individual bytes as a "mask" and summing the subsequent components on the query vector.

Right now, this is just a regular 'ole for loop. I think we can make it WAY faster with Panama SIMD.

The two methods in question are: ESVectorUtil.ipByteBit and ESVectorUtil.ipFloatBit

elasticsearchmachine commented 2 days ago

Pinging @elastic/es-search-relevance (Team:Search Relevance)