- 
                Notifications
    
You must be signed in to change notification settings  - Fork 25.6k
 
Panama implementation of float-byte vector ops #123270
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
e6a2e19    to
    ff2e0e2      
    Compare
  
    | 
           Pinging @elastic/es-search-relevance (Team:Search Relevance)  | 
    
          
 We should at a minimum add some clauses here: ESVectorUtilTests (missing for some other things I think). This way we capture that we are actually doing the math correct with various random vector sizes. For performance, we should add a new JMH benchmark if possible for folks to run in the future.  | 
    
        
          
                libs/simdvec/src/test/java/org/elasticsearch/simdvec/ESVectorUtilTests.java
              
                Outdated
          
            Show resolved
            Hide resolved
        
      | 
           The JMH tests need some rework to support heterogenous types - let me take a closer look at the infrastructure...  | 
    
| 
           JMH tests refactored in #124351 ready for this implementation  | 
    
Followon from #122381, introduce vectorized operations for float-byte comparisons
JMH shows a ~16x speedup:
Unrolling the loop doesn't give any additional performance benefit here, so I've left it as-is (it looks like hotspot may already be unrolling it itself)