Subhadeep Karan
Subhadeep Karan
Summary: Implementation of: - `SIMDLevel` that can be used as a template parameter to differentiate implementations - `SIMDConfig` object that defines what is the enabled SIMDLevel in the TARGETS all...
Summary: `fvec_madd` is the first function to test dispatching to AVX and AVX512 distances_simd.cpp is split into specialized files distances_avx2.cpp distances_avx512.cpp that are compiled with appropriate flags. Reviewed By: mnorris11...
Summary: moved IndexIVFPQ and IndexPQ to dynamic dispatch. Since the code was already quite modular (thanks Alex!), this boils down to make independent cpp files for the different SIMD versions....
Summary: Move the interface of SIMD functions to use the simdXfloat32 API to mutualize code. Differential Revision: D72945865
Summary: Splits the ScalarQuantizer code into parts so that the AVX2 and AVX512 can be compiled independently. Differential Revision: D73037185
Summary: Main changes -- 1. simdlib_neon.h has been updated to use the templates properly. This is the largest file change in the diff. 2. simd_levels.h now has 2 separate macros...
Differential Revision: D80500327