Open aparrish opened 4 years ago
Sounds like there's some platform mismatch. Possibly AVX instructions. I guess the main workaround for now is to build from source.
Also getting the Illegal instruction: 4
error after upgrading to 1.17.0
.
Python 3.7.7
pip install annoy==1.16.3
I had this problem as well. pip install annoy==1.16.3
worked for me!
seems unfortunate that you need to use old versions. i'll see what we can do about 1.17.0
Also facing the same issue using both 1.16.3
and 1.17.0
versions. A force reinstall of annoy for any version (pip install --force annoy=1.17.0
) fixes the .build()
fault to me.
Same problem when running annoy in Docker. Works fine on the same server when running on bare OS. Docker image was build in github actions runner, so I think runner CPU can be a little different from server but that's not gow it should work - other libs handle it just fine
I'm using the code from #506 to test. The program crashes after
.build()
and prints "Illegal instruction: 4" on the output.I get the same error whether or not I'm using the multithreaded version of
.build()
.Python version:
I installed Annoy with
pip
. The reported version is 1.17.0, and pip installed the pre-built binary wheel for the package.Interestingly, things seem to work fine if I tell pip to ignore the binary wheel (
pip install annoy --no-binary :all:
). I haven't tested this in a controlled environment, but the conda-forge binary build of 1.17.0 also seems to work fine for me (using the same version of Python and macOS).