Dependency on packed_simd
bwindsor22 opened this issue · 9 comments
Hnsw depends on packed_simd, which is no longer in development.
On my mac, this is hnsw is showing the same issues seen with pack_simd in other libraries:
rust-lang/cargo#9139
It would be great to move to https://github.com/rust-lang/stdsimd maybe
packed_simd v0.3.3
└── hnsw v0.3.1
If it supports the same capabilities, I can look into it. I have some time today to take a look.
It seems that stdsimd isn't published on crates.io, nor is it yet part of the standard library yet. I will continue looking into alternatives to packed_simd
.
It seems that the only maintained alternative that I can use right now is faster
: https://crates.io/crates/faster
I am going to see if I can use this and get similar performance.
Edit: Nevermind, I can't even build packed_simd
anymore, so I am going to just try it.
It seems that faster
also uses packed_simd
. I am not really sure what to do here. I will look for more obscure alternatives. There might just not be a sufficient solution.
I have been looking at simdeez
: https://crates.io/crates/simdeez. It doesn't seem to work in a way that is what we need. I am not sure if there is any alternative in the Rust ecosystem to packed_simd
at this time. Even the simba
crate (https://docs.rs/simba/0.4.0/simba/) uses packed_simd
. The fact that it is not building is definitely a huge issue.
Okay, looking at those other crates, it seems that this is what I need to use: https://crates.io/crates/packed_simd_2/0.3.4
Published version 0.11.0
of space
: https://crates.io/crates/space/0.11.0.
Okay, @bwindsor22, please check if the newly released version of HNSW v0.7.0
still has build issues. https://crates.io/crates/hnsw/0.7.0
If its all good, we can close this issue.
I am going to close this issue, as this should likely be resolved. I also recommend using HGG (https://github.com/rust-cv/hgg) at this point as an alternative to HNSW.