yahoojapan / NGT

Nearest Neighbor Search with Neighborhood Graph and Tree for High-dimensional Data
Apache License 2.0
1.22k stars 112 forks source link

[BUGFIX] Unsupported instruction was included in the Hamming distance AVX512 processing. #163

Closed kpango closed 2 weeks ago

kpango commented 2 weeks ago

Bugfix of https://github.com/yahoojapan/NGT/issues/161

I've fixed the problem that _mm512_extract_epi64 is not a supported instruction. So use _mm512_extracti64x4_epi64 to split into upper and lower bits and use 256 for calculation. If AVX512VPOPCNTDQ is supported, use _mm512_popcnt_epi64 without extract.

masajiro commented 2 weeks ago

Thanks!