ashvardanian / SimSIMD

Up to 200x Faster Inner Products and Vector Similarity — for Python, JavaScript, Rust, C, and Swift, supporting f64, f32, f16 real & complex, i8, and binary vectors using SIMD for both x86 AVX2 & AVX-512 and Arm NEON & SVE 📐
https://ashvardanian.com/posts/simsimd-faster-scipy/
Apache License 2.0
797 stars 42 forks source link

Define (typedef) simsimd_f16_t even when SIMSIMD_NATIVE_F16 is passed in externally #78

Closed Ngalstyan4 closed 5 months ago

Ngalstyan4 commented 5 months ago

E.g., USearch depends on this behaviour and expects simsimd to define simsimd_f16_t when passing in SIMSIMD_NATIVE_F16=1 1

So far this had not caused issues because either USEARCH_USE_FP16LIB was set to true or (in benchmarks) simsimd.h was included directly, which resulted in this logic in simsimd being evaluated before compilation got to index_plugins.hpp#L50.

ashvardanian commented 5 months ago

:tada: This PR is included in version 3.7.5 :tada:

The release is available on GitHub release

Your semantic-release bot :package::rocket: