Home

Awesome

anndists

This crate provides distances computations used in some related crates hnsw_rs, annembed and coreset

All distances implement the trait Distance:

pub trait Distance<T: Send + Sync> {  
    fn eval(&self, va: &[T], vb: &[T]) -> f32;
}

Functionalities

The crate provides:

Implementation

Simd support is provided with the simdeez crate on Intel and partial implementation with std::simd for general case.

Building

Simd

Benchmarks and Examples

The speed is illustated in the hnsw_rs, annembed crates

Contributions

Petter Egesund added the DistLevenshtein distance.

License

Licensed under either of

at your option.